Asterisk - The Open Source Telephony Project  18.5.0
ari_model_validators.h
Go to the documentation of this file.
1 /*
2  * Asterisk -- An open source telephony toolkit.
3  *
4  * Copyright (C) 2013, Digium, Inc.
5  *
6  * See http://www.asterisk.org for more information about
7  * the Asterisk project. Please do not directly contact
8  * any of the maintainers of this project for assistance;
9  * the project provides a web site, mailing lists and IRC
10  * channels for your use.
11  *
12  * This program is free software, distributed under the terms of
13  * the GNU General Public License Version 2. See the LICENSE file
14  * at the top of the source tree.
15  */
16 
17 /*! \file
18  *
19  * \brief Generated file - Build validators for ARI model objects.
20  *
21  * In addition to the normal validation functions one would normally expect,
22  * each validator has a ast_ari_validate_{id}_fn() companion function that returns
23  * the validator's function pointer.
24  *
25  * The reason for this seamingly useless indirection is the way function
26  * pointers used to interfere with module loading. Previously, Asterisk
27  * attempted to dlopen() each module using \c RTLD_LAZY in order to read some
28  * metadata from the module. Using functions to get the function pointer
29  * allowed us to be lazy.
30  */
31 
32  /*
33  * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
34  * !!!!! DO NOT EDIT !!!!!
35  * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
36  * This file is generated by a mustache template. Please see the original
37  * template in rest-api-templates/ari_model_validators.h.mustache
38  */
39 
40 #ifndef _ASTERISK_ARI_MODEL_H
41 #define _ASTERISK_ARI_MODEL_H
42 
43 #include "asterisk/json.h"
44 
45 /*! @{ */
46 
47 /*!
48  * \brief Validator for native Swagger void.
49  *
50  * \param json JSON object to validate.
51  * \returns True (non-zero) if valid.
52  * \returns False (zero) if invalid.
53  */
54 int ast_ari_validate_void(struct ast_json *json);
55 
56 /*!
57  * \brief Validator for native Swagger object.
58  *
59  * \param json JSON object to validate.
60  * \returns True (non-zero) if valid.
61  * \returns False (zero) if invalid.
62  */
63 int ast_ari_validate_object(struct ast_json *json);
64 
65 /*!
66  * \brief Validator for native Swagger byte.
67  *
68  * \param json JSON object to validate.
69  * \returns True (non-zero) if valid.
70  * \returns False (zero) if invalid.
71  */
72 int ast_ari_validate_byte(struct ast_json *json);
73 
74 /*!
75  * \brief Validator for native Swagger boolean.
76  *
77  * \param json JSON object to validate.
78  * \returns True (non-zero) if valid.
79  * \returns False (zero) if invalid.
80  */
81 int ast_ari_validate_boolean(struct ast_json *json);
82 
83 /*!
84  * \brief Validator for native Swagger int.
85  *
86  * \param json JSON object to validate.
87  * \returns True (non-zero) if valid.
88  * \returns False (zero) if invalid.
89  */
90 int ast_ari_validate_int(struct ast_json *json);
91 
92 /*!
93  * \brief Validator for native Swagger long.
94  *
95  * \param json JSON object to validate.
96  * \returns True (non-zero) if valid.
97  * \returns False (zero) if invalid.
98  */
99 int ast_ari_validate_long(struct ast_json *json);
100 
101 /*!
102  * \brief Validator for native Swagger float.
103  *
104  * \param json JSON object to validate.
105  * \returns True (non-zero) if valid.
106  * \returns False (zero) if invalid.
107  */
108 int ast_ari_validate_float(struct ast_json *json);
109 
110 /*!
111  * \brief Validator for native Swagger double.
112  *
113  * \param json JSON object to validate.
114  * \returns True (non-zero) if valid.
115  * \returns False (zero) if invalid.
116  */
117 int ast_ari_validate_double(struct ast_json *json);
118 
119 /*!
120  * \brief Validator for native Swagger string.
121  *
122  * \param json JSON object to validate.
123  * \returns True (non-zero) if valid.
124  * \returns False (zero) if invalid.
125  */
126 int ast_ari_validate_string(struct ast_json *json);
127 
128 /*!
129  * \brief Validator for native Swagger date.
130  *
131  * \param json JSON object to validate.
132  * \returns True (non-zero) if valid.
133  * \returns False (zero) if invalid.
134  */
135 int ast_ari_validate_date(struct ast_json *json);
136 
137 /*!
138  * \brief Validator for a Swagger List[]/JSON array.
139  *
140  * \param json JSON object to validate.
141  * \param fn Validator to call on every element in the array.
142  * \returns True (non-zero) if valid.
143  * \returns False (zero) if invalid.
144  */
145 int ast_ari_validate_list(struct ast_json *json, int (*fn)(struct ast_json *));
146 
147 /*! @} */
148 
149 /*!
150  * \brief Function type for validator functions. Allows for
151  */
152 typedef int (*ari_validator)(struct ast_json *json);
153 
154 /*!
155  * \brief Validator for AsteriskInfo.
156  *
157  * Asterisk system information
158  *
159  * \param json JSON object to validate.
160  * \returns True (non-zero) if valid.
161  * \returns False (zero) if invalid.
162  */
163 int ast_ari_validate_asterisk_info(struct ast_json *json);
164 
165 /*!
166  * \brief Function pointer to ast_ari_validate_asterisk_info().
167  *
168  * See \ref ast_ari_model_validators.h for more details.
169  */
171 
172 /*!
173  * \brief Validator for AsteriskPing.
174  *
175  * Asterisk ping information
176  *
177  * \param json JSON object to validate.
178  * \returns True (non-zero) if valid.
179  * \returns False (zero) if invalid.
180  */
181 int ast_ari_validate_asterisk_ping(struct ast_json *json);
182 
183 /*!
184  * \brief Function pointer to ast_ari_validate_asterisk_ping().
185  *
186  * See \ref ast_ari_model_validators.h for more details.
187  */
189 
190 /*!
191  * \brief Validator for BuildInfo.
192  *
193  * Info about how Asterisk was built
194  *
195  * \param json JSON object to validate.
196  * \returns True (non-zero) if valid.
197  * \returns False (zero) if invalid.
198  */
199 int ast_ari_validate_build_info(struct ast_json *json);
200 
201 /*!
202  * \brief Function pointer to ast_ari_validate_build_info().
203  *
204  * See \ref ast_ari_model_validators.h for more details.
205  */
207 
208 /*!
209  * \brief Validator for ConfigInfo.
210  *
211  * Info about Asterisk configuration
212  *
213  * \param json JSON object to validate.
214  * \returns True (non-zero) if valid.
215  * \returns False (zero) if invalid.
216  */
217 int ast_ari_validate_config_info(struct ast_json *json);
218 
219 /*!
220  * \brief Function pointer to ast_ari_validate_config_info().
221  *
222  * See \ref ast_ari_model_validators.h for more details.
223  */
225 
226 /*!
227  * \brief Validator for ConfigTuple.
228  *
229  * A key/value pair that makes up part of a configuration object.
230  *
231  * \param json JSON object to validate.
232  * \returns True (non-zero) if valid.
233  * \returns False (zero) if invalid.
234  */
235 int ast_ari_validate_config_tuple(struct ast_json *json);
236 
237 /*!
238  * \brief Function pointer to ast_ari_validate_config_tuple().
239  *
240  * See \ref ast_ari_model_validators.h for more details.
241  */
243 
244 /*!
245  * \brief Validator for LogChannel.
246  *
247  * Details of an Asterisk log channel
248  *
249  * \param json JSON object to validate.
250  * \returns True (non-zero) if valid.
251  * \returns False (zero) if invalid.
252  */
253 int ast_ari_validate_log_channel(struct ast_json *json);
254 
255 /*!
256  * \brief Function pointer to ast_ari_validate_log_channel().
257  *
258  * See \ref ast_ari_model_validators.h for more details.
259  */
261 
262 /*!
263  * \brief Validator for Module.
264  *
265  * Details of an Asterisk module
266  *
267  * \param json JSON object to validate.
268  * \returns True (non-zero) if valid.
269  * \returns False (zero) if invalid.
270  */
271 int ast_ari_validate_module(struct ast_json *json);
272 
273 /*!
274  * \brief Function pointer to ast_ari_validate_module().
275  *
276  * See \ref ast_ari_model_validators.h for more details.
277  */
279 
280 /*!
281  * \brief Validator for SetId.
282  *
283  * Effective user/group id
284  *
285  * \param json JSON object to validate.
286  * \returns True (non-zero) if valid.
287  * \returns False (zero) if invalid.
288  */
289 int ast_ari_validate_set_id(struct ast_json *json);
290 
291 /*!
292  * \brief Function pointer to ast_ari_validate_set_id().
293  *
294  * See \ref ast_ari_model_validators.h for more details.
295  */
297 
298 /*!
299  * \brief Validator for StatusInfo.
300  *
301  * Info about Asterisk status
302  *
303  * \param json JSON object to validate.
304  * \returns True (non-zero) if valid.
305  * \returns False (zero) if invalid.
306  */
307 int ast_ari_validate_status_info(struct ast_json *json);
308 
309 /*!
310  * \brief Function pointer to ast_ari_validate_status_info().
311  *
312  * See \ref ast_ari_model_validators.h for more details.
313  */
315 
316 /*!
317  * \brief Validator for SystemInfo.
318  *
319  * Info about Asterisk
320  *
321  * \param json JSON object to validate.
322  * \returns True (non-zero) if valid.
323  * \returns False (zero) if invalid.
324  */
325 int ast_ari_validate_system_info(struct ast_json *json);
326 
327 /*!
328  * \brief Function pointer to ast_ari_validate_system_info().
329  *
330  * See \ref ast_ari_model_validators.h for more details.
331  */
333 
334 /*!
335  * \brief Validator for Variable.
336  *
337  * The value of a channel variable
338  *
339  * \param json JSON object to validate.
340  * \returns True (non-zero) if valid.
341  * \returns False (zero) if invalid.
342  */
343 int ast_ari_validate_variable(struct ast_json *json);
344 
345 /*!
346  * \brief Function pointer to ast_ari_validate_variable().
347  *
348  * See \ref ast_ari_model_validators.h for more details.
349  */
351 
352 /*!
353  * \brief Validator for Endpoint.
354  *
355  * An external device that may offer/accept calls to/from Asterisk.
356  *
357  * Unlike most resources, which have a single unique identifier, an endpoint is uniquely identified by the technology/resource pair.
358  *
359  * \param json JSON object to validate.
360  * \returns True (non-zero) if valid.
361  * \returns False (zero) if invalid.
362  */
363 int ast_ari_validate_endpoint(struct ast_json *json);
364 
365 /*!
366  * \brief Function pointer to ast_ari_validate_endpoint().
367  *
368  * See \ref ast_ari_model_validators.h for more details.
369  */
371 
372 /*!
373  * \brief Validator for TextMessage.
374  *
375  * A text message.
376  *
377  * \param json JSON object to validate.
378  * \returns True (non-zero) if valid.
379  * \returns False (zero) if invalid.
380  */
381 int ast_ari_validate_text_message(struct ast_json *json);
382 
383 /*!
384  * \brief Function pointer to ast_ari_validate_text_message().
385  *
386  * See \ref ast_ari_model_validators.h for more details.
387  */
389 
390 /*!
391  * \brief Validator for CallerID.
392  *
393  * Caller identification
394  *
395  * \param json JSON object to validate.
396  * \returns True (non-zero) if valid.
397  * \returns False (zero) if invalid.
398  */
399 int ast_ari_validate_caller_id(struct ast_json *json);
400 
401 /*!
402  * \brief Function pointer to ast_ari_validate_caller_id().
403  *
404  * See \ref ast_ari_model_validators.h for more details.
405  */
407 
408 /*!
409  * \brief Validator for Channel.
410  *
411  * A specific communication connection between Asterisk and an Endpoint.
412  *
413  * \param json JSON object to validate.
414  * \returns True (non-zero) if valid.
415  * \returns False (zero) if invalid.
416  */
417 int ast_ari_validate_channel(struct ast_json *json);
418 
419 /*!
420  * \brief Function pointer to ast_ari_validate_channel().
421  *
422  * See \ref ast_ari_model_validators.h for more details.
423  */
425 
426 /*!
427  * \brief Validator for Dialed.
428  *
429  * Dialed channel information.
430  *
431  * \param json JSON object to validate.
432  * \returns True (non-zero) if valid.
433  * \returns False (zero) if invalid.
434  */
435 int ast_ari_validate_dialed(struct ast_json *json);
436 
437 /*!
438  * \brief Function pointer to ast_ari_validate_dialed().
439  *
440  * See \ref ast_ari_model_validators.h for more details.
441  */
443 
444 /*!
445  * \brief Validator for DialplanCEP.
446  *
447  * Dialplan location (context/extension/priority)
448  *
449  * \param json JSON object to validate.
450  * \returns True (non-zero) if valid.
451  * \returns False (zero) if invalid.
452  */
453 int ast_ari_validate_dialplan_cep(struct ast_json *json);
454 
455 /*!
456  * \brief Function pointer to ast_ari_validate_dialplan_cep().
457  *
458  * See \ref ast_ari_model_validators.h for more details.
459  */
461 
462 /*!
463  * \brief Validator for RTPstat.
464  *
465  * A statistics of a RTP.
466  *
467  * \param json JSON object to validate.
468  * \returns True (non-zero) if valid.
469  * \returns False (zero) if invalid.
470  */
471 int ast_ari_validate_rtpstat(struct ast_json *json);
472 
473 /*!
474  * \brief Function pointer to ast_ari_validate_rtpstat().
475  *
476  * See \ref ast_ari_model_validators.h for more details.
477  */
479 
480 /*!
481  * \brief Validator for Bridge.
482  *
483  * The merging of media from one or more channels.
484  *
485  * Everyone on the bridge receives the same audio.
486  *
487  * \param json JSON object to validate.
488  * \returns True (non-zero) if valid.
489  * \returns False (zero) if invalid.
490  */
491 int ast_ari_validate_bridge(struct ast_json *json);
492 
493 /*!
494  * \brief Function pointer to ast_ari_validate_bridge().
495  *
496  * See \ref ast_ari_model_validators.h for more details.
497  */
499 
500 /*!
501  * \brief Validator for LiveRecording.
502  *
503  * A recording that is in progress
504  *
505  * \param json JSON object to validate.
506  * \returns True (non-zero) if valid.
507  * \returns False (zero) if invalid.
508  */
509 int ast_ari_validate_live_recording(struct ast_json *json);
510 
511 /*!
512  * \brief Function pointer to ast_ari_validate_live_recording().
513  *
514  * See \ref ast_ari_model_validators.h for more details.
515  */
517 
518 /*!
519  * \brief Validator for StoredRecording.
520  *
521  * A past recording that may be played back.
522  *
523  * \param json JSON object to validate.
524  * \returns True (non-zero) if valid.
525  * \returns False (zero) if invalid.
526  */
528 
529 /*!
530  * \brief Function pointer to ast_ari_validate_stored_recording().
531  *
532  * See \ref ast_ari_model_validators.h for more details.
533  */
535 
536 /*!
537  * \brief Validator for FormatLangPair.
538  *
539  * Identifies the format and language of a sound file
540  *
541  * \param json JSON object to validate.
542  * \returns True (non-zero) if valid.
543  * \returns False (zero) if invalid.
544  */
546 
547 /*!
548  * \brief Function pointer to ast_ari_validate_format_lang_pair().
549  *
550  * See \ref ast_ari_model_validators.h for more details.
551  */
553 
554 /*!
555  * \brief Validator for Sound.
556  *
557  * A media file that may be played back.
558  *
559  * \param json JSON object to validate.
560  * \returns True (non-zero) if valid.
561  * \returns False (zero) if invalid.
562  */
563 int ast_ari_validate_sound(struct ast_json *json);
564 
565 /*!
566  * \brief Function pointer to ast_ari_validate_sound().
567  *
568  * See \ref ast_ari_model_validators.h for more details.
569  */
571 
572 /*!
573  * \brief Validator for Playback.
574  *
575  * Object representing the playback of media to a channel
576  *
577  * \param json JSON object to validate.
578  * \returns True (non-zero) if valid.
579  * \returns False (zero) if invalid.
580  */
581 int ast_ari_validate_playback(struct ast_json *json);
582 
583 /*!
584  * \brief Function pointer to ast_ari_validate_playback().
585  *
586  * See \ref ast_ari_model_validators.h for more details.
587  */
589 
590 /*!
591  * \brief Validator for DeviceState.
592  *
593  * Represents the state of a device.
594  *
595  * \param json JSON object to validate.
596  * \returns True (non-zero) if valid.
597  * \returns False (zero) if invalid.
598  */
599 int ast_ari_validate_device_state(struct ast_json *json);
600 
601 /*!
602  * \brief Function pointer to ast_ari_validate_device_state().
603  *
604  * See \ref ast_ari_model_validators.h for more details.
605  */
607 
608 /*!
609  * \brief Validator for Mailbox.
610  *
611  * Represents the state of a mailbox.
612  *
613  * \param json JSON object to validate.
614  * \returns True (non-zero) if valid.
615  * \returns False (zero) if invalid.
616  */
617 int ast_ari_validate_mailbox(struct ast_json *json);
618 
619 /*!
620  * \brief Function pointer to ast_ari_validate_mailbox().
621  *
622  * See \ref ast_ari_model_validators.h for more details.
623  */
625 
626 /*!
627  * \brief Validator for ApplicationMoveFailed.
628  *
629  * Notification that trying to move a channel to another Stasis application failed.
630  *
631  * \param json JSON object to validate.
632  * \returns True (non-zero) if valid.
633  * \returns False (zero) if invalid.
634  */
636 
637 /*!
638  * \brief Function pointer to ast_ari_validate_application_move_failed().
639  *
640  * See \ref ast_ari_model_validators.h for more details.
641  */
643 
644 /*!
645  * \brief Validator for ApplicationReplaced.
646  *
647  * Notification that another WebSocket has taken over for an application.
648  *
649  * An application may only be subscribed to by a single WebSocket at a time. If multiple WebSockets attempt to subscribe to the same application, the newer WebSocket wins, and the older one receives this event.
650  *
651  * \param json JSON object to validate.
652  * \returns True (non-zero) if valid.
653  * \returns False (zero) if invalid.
654  */
656 
657 /*!
658  * \brief Function pointer to ast_ari_validate_application_replaced().
659  *
660  * See \ref ast_ari_model_validators.h for more details.
661  */
663 
664 /*!
665  * \brief Validator for BridgeAttendedTransfer.
666  *
667  * Notification that an attended transfer has occurred.
668  *
669  * \param json JSON object to validate.
670  * \returns True (non-zero) if valid.
671  * \returns False (zero) if invalid.
672  */
674 
675 /*!
676  * \brief Function pointer to ast_ari_validate_bridge_attended_transfer().
677  *
678  * See \ref ast_ari_model_validators.h for more details.
679  */
681 
682 /*!
683  * \brief Validator for BridgeBlindTransfer.
684  *
685  * Notification that a blind transfer has occurred.
686  *
687  * \param json JSON object to validate.
688  * \returns True (non-zero) if valid.
689  * \returns False (zero) if invalid.
690  */
692 
693 /*!
694  * \brief Function pointer to ast_ari_validate_bridge_blind_transfer().
695  *
696  * See \ref ast_ari_model_validators.h for more details.
697  */
699 
700 /*!
701  * \brief Validator for BridgeCreated.
702  *
703  * Notification that a bridge has been created.
704  *
705  * \param json JSON object to validate.
706  * \returns True (non-zero) if valid.
707  * \returns False (zero) if invalid.
708  */
709 int ast_ari_validate_bridge_created(struct ast_json *json);
710 
711 /*!
712  * \brief Function pointer to ast_ari_validate_bridge_created().
713  *
714  * See \ref ast_ari_model_validators.h for more details.
715  */
717 
718 /*!
719  * \brief Validator for BridgeDestroyed.
720  *
721  * Notification that a bridge has been destroyed.
722  *
723  * \param json JSON object to validate.
724  * \returns True (non-zero) if valid.
725  * \returns False (zero) if invalid.
726  */
728 
729 /*!
730  * \brief Function pointer to ast_ari_validate_bridge_destroyed().
731  *
732  * See \ref ast_ari_model_validators.h for more details.
733  */
735 
736 /*!
737  * \brief Validator for BridgeMerged.
738  *
739  * Notification that one bridge has merged into another.
740  *
741  * \param json JSON object to validate.
742  * \returns True (non-zero) if valid.
743  * \returns False (zero) if invalid.
744  */
745 int ast_ari_validate_bridge_merged(struct ast_json *json);
746 
747 /*!
748  * \brief Function pointer to ast_ari_validate_bridge_merged().
749  *
750  * See \ref ast_ari_model_validators.h for more details.
751  */
753 
754 /*!
755  * \brief Validator for BridgeVideoSourceChanged.
756  *
757  * Notification that the source of video in a bridge has changed.
758  *
759  * \param json JSON object to validate.
760  * \returns True (non-zero) if valid.
761  * \returns False (zero) if invalid.
762  */
764 
765 /*!
766  * \brief Function pointer to ast_ari_validate_bridge_video_source_changed().
767  *
768  * See \ref ast_ari_model_validators.h for more details.
769  */
771 
772 /*!
773  * \brief Validator for ChannelCallerId.
774  *
775  * Channel changed Caller ID.
776  *
777  * \param json JSON object to validate.
778  * \returns True (non-zero) if valid.
779  * \returns False (zero) if invalid.
780  */
782 
783 /*!
784  * \brief Function pointer to ast_ari_validate_channel_caller_id().
785  *
786  * See \ref ast_ari_model_validators.h for more details.
787  */
789 
790 /*!
791  * \brief Validator for ChannelConnectedLine.
792  *
793  * Channel changed Connected Line.
794  *
795  * \param json JSON object to validate.
796  * \returns True (non-zero) if valid.
797  * \returns False (zero) if invalid.
798  */
800 
801 /*!
802  * \brief Function pointer to ast_ari_validate_channel_connected_line().
803  *
804  * See \ref ast_ari_model_validators.h for more details.
805  */
807 
808 /*!
809  * \brief Validator for ChannelCreated.
810  *
811  * Notification that a channel has been created.
812  *
813  * \param json JSON object to validate.
814  * \returns True (non-zero) if valid.
815  * \returns False (zero) if invalid.
816  */
818 
819 /*!
820  * \brief Function pointer to ast_ari_validate_channel_created().
821  *
822  * See \ref ast_ari_model_validators.h for more details.
823  */
825 
826 /*!
827  * \brief Validator for ChannelDestroyed.
828  *
829  * Notification that a channel has been destroyed.
830  *
831  * \param json JSON object to validate.
832  * \returns True (non-zero) if valid.
833  * \returns False (zero) if invalid.
834  */
836 
837 /*!
838  * \brief Function pointer to ast_ari_validate_channel_destroyed().
839  *
840  * See \ref ast_ari_model_validators.h for more details.
841  */
843 
844 /*!
845  * \brief Validator for ChannelDialplan.
846  *
847  * Channel changed location in the dialplan.
848  *
849  * \param json JSON object to validate.
850  * \returns True (non-zero) if valid.
851  * \returns False (zero) if invalid.
852  */
854 
855 /*!
856  * \brief Function pointer to ast_ari_validate_channel_dialplan().
857  *
858  * See \ref ast_ari_model_validators.h for more details.
859  */
861 
862 /*!
863  * \brief Validator for ChannelDtmfReceived.
864  *
865  * DTMF received on a channel.
866  *
867  * This event is sent when the DTMF ends. There is no notification about the start of DTMF
868  *
869  * \param json JSON object to validate.
870  * \returns True (non-zero) if valid.
871  * \returns False (zero) if invalid.
872  */
874 
875 /*!
876  * \brief Function pointer to ast_ari_validate_channel_dtmf_received().
877  *
878  * See \ref ast_ari_model_validators.h for more details.
879  */
881 
882 /*!
883  * \brief Validator for ChannelEnteredBridge.
884  *
885  * Notification that a channel has entered a bridge.
886  *
887  * \param json JSON object to validate.
888  * \returns True (non-zero) if valid.
889  * \returns False (zero) if invalid.
890  */
892 
893 /*!
894  * \brief Function pointer to ast_ari_validate_channel_entered_bridge().
895  *
896  * See \ref ast_ari_model_validators.h for more details.
897  */
899 
900 /*!
901  * \brief Validator for ChannelHangupRequest.
902  *
903  * A hangup was requested on the channel.
904  *
905  * \param json JSON object to validate.
906  * \returns True (non-zero) if valid.
907  * \returns False (zero) if invalid.
908  */
910 
911 /*!
912  * \brief Function pointer to ast_ari_validate_channel_hangup_request().
913  *
914  * See \ref ast_ari_model_validators.h for more details.
915  */
917 
918 /*!
919  * \brief Validator for ChannelHold.
920  *
921  * A channel initiated a media hold.
922  *
923  * \param json JSON object to validate.
924  * \returns True (non-zero) if valid.
925  * \returns False (zero) if invalid.
926  */
927 int ast_ari_validate_channel_hold(struct ast_json *json);
928 
929 /*!
930  * \brief Function pointer to ast_ari_validate_channel_hold().
931  *
932  * See \ref ast_ari_model_validators.h for more details.
933  */
935 
936 /*!
937  * \brief Validator for ChannelLeftBridge.
938  *
939  * Notification that a channel has left a bridge.
940  *
941  * \param json JSON object to validate.
942  * \returns True (non-zero) if valid.
943  * \returns False (zero) if invalid.
944  */
946 
947 /*!
948  * \brief Function pointer to ast_ari_validate_channel_left_bridge().
949  *
950  * See \ref ast_ari_model_validators.h for more details.
951  */
953 
954 /*!
955  * \brief Validator for ChannelStateChange.
956  *
957  * Notification of a channel's state change.
958  *
959  * \param json JSON object to validate.
960  * \returns True (non-zero) if valid.
961  * \returns False (zero) if invalid.
962  */
964 
965 /*!
966  * \brief Function pointer to ast_ari_validate_channel_state_change().
967  *
968  * See \ref ast_ari_model_validators.h for more details.
969  */
971 
972 /*!
973  * \brief Validator for ChannelTalkingFinished.
974  *
975  * Talking is no longer detected on the channel.
976  *
977  * \param json JSON object to validate.
978  * \returns True (non-zero) if valid.
979  * \returns False (zero) if invalid.
980  */
982 
983 /*!
984  * \brief Function pointer to ast_ari_validate_channel_talking_finished().
985  *
986  * See \ref ast_ari_model_validators.h for more details.
987  */
989 
990 /*!
991  * \brief Validator for ChannelTalkingStarted.
992  *
993  * Talking was detected on the channel.
994  *
995  * \param json JSON object to validate.
996  * \returns True (non-zero) if valid.
997  * \returns False (zero) if invalid.
998  */
1000 
1001 /*!
1002  * \brief Function pointer to ast_ari_validate_channel_talking_started().
1003  *
1004  * See \ref ast_ari_model_validators.h for more details.
1005  */
1007 
1008 /*!
1009  * \brief Validator for ChannelUnhold.
1010  *
1011  * A channel initiated a media unhold.
1012  *
1013  * \param json JSON object to validate.
1014  * \returns True (non-zero) if valid.
1015  * \returns False (zero) if invalid.
1016  */
1017 int ast_ari_validate_channel_unhold(struct ast_json *json);
1018 
1019 /*!
1020  * \brief Function pointer to ast_ari_validate_channel_unhold().
1021  *
1022  * See \ref ast_ari_model_validators.h for more details.
1023  */
1025 
1026 /*!
1027  * \brief Validator for ChannelUserevent.
1028  *
1029  * User-generated event with additional user-defined fields in the object.
1030  *
1031  * \param json JSON object to validate.
1032  * \returns True (non-zero) if valid.
1033  * \returns False (zero) if invalid.
1034  */
1036 
1037 /*!
1038  * \brief Function pointer to ast_ari_validate_channel_userevent().
1039  *
1040  * See \ref ast_ari_model_validators.h for more details.
1041  */
1043 
1044 /*!
1045  * \brief Validator for ChannelVarset.
1046  *
1047  * Channel variable changed.
1048  *
1049  * \param json JSON object to validate.
1050  * \returns True (non-zero) if valid.
1051  * \returns False (zero) if invalid.
1052  */
1053 int ast_ari_validate_channel_varset(struct ast_json *json);
1054 
1055 /*!
1056  * \brief Function pointer to ast_ari_validate_channel_varset().
1057  *
1058  * See \ref ast_ari_model_validators.h for more details.
1059  */
1061 
1062 /*!
1063  * \brief Validator for ContactInfo.
1064  *
1065  * Detailed information about a contact on an endpoint.
1066  *
1067  * \param json JSON object to validate.
1068  * \returns True (non-zero) if valid.
1069  * \returns False (zero) if invalid.
1070  */
1071 int ast_ari_validate_contact_info(struct ast_json *json);
1072 
1073 /*!
1074  * \brief Function pointer to ast_ari_validate_contact_info().
1075  *
1076  * See \ref ast_ari_model_validators.h for more details.
1077  */
1079 
1080 /*!
1081  * \brief Validator for ContactStatusChange.
1082  *
1083  * The state of a contact on an endpoint has changed.
1084  *
1085  * \param json JSON object to validate.
1086  * \returns True (non-zero) if valid.
1087  * \returns False (zero) if invalid.
1088  */
1090 
1091 /*!
1092  * \brief Function pointer to ast_ari_validate_contact_status_change().
1093  *
1094  * See \ref ast_ari_model_validators.h for more details.
1095  */
1097 
1098 /*!
1099  * \brief Validator for DeviceStateChanged.
1100  *
1101  * Notification that a device state has changed.
1102  *
1103  * \param json JSON object to validate.
1104  * \returns True (non-zero) if valid.
1105  * \returns False (zero) if invalid.
1106  */
1108 
1109 /*!
1110  * \brief Function pointer to ast_ari_validate_device_state_changed().
1111  *
1112  * See \ref ast_ari_model_validators.h for more details.
1113  */
1115 
1116 /*!
1117  * \brief Validator for Dial.
1118  *
1119  * Dialing state has changed.
1120  *
1121  * \param json JSON object to validate.
1122  * \returns True (non-zero) if valid.
1123  * \returns False (zero) if invalid.
1124  */
1125 int ast_ari_validate_dial(struct ast_json *json);
1126 
1127 /*!
1128  * \brief Function pointer to ast_ari_validate_dial().
1129  *
1130  * See \ref ast_ari_model_validators.h for more details.
1131  */
1133 
1134 /*!
1135  * \brief Validator for EndpointStateChange.
1136  *
1137  * Endpoint state changed.
1138  *
1139  * \param json JSON object to validate.
1140  * \returns True (non-zero) if valid.
1141  * \returns False (zero) if invalid.
1142  */
1144 
1145 /*!
1146  * \brief Function pointer to ast_ari_validate_endpoint_state_change().
1147  *
1148  * See \ref ast_ari_model_validators.h for more details.
1149  */
1151 
1152 /*!
1153  * \brief Validator for Event.
1154  *
1155  * Base type for asynchronous events from Asterisk.
1156  *
1157  * \param json JSON object to validate.
1158  * \returns True (non-zero) if valid.
1159  * \returns False (zero) if invalid.
1160  */
1161 int ast_ari_validate_event(struct ast_json *json);
1162 
1163 /*!
1164  * \brief Function pointer to ast_ari_validate_event().
1165  *
1166  * See \ref ast_ari_model_validators.h for more details.
1167  */
1169 
1170 /*!
1171  * \brief Validator for Message.
1172  *
1173  * Base type for errors and events
1174  *
1175  * \param json JSON object to validate.
1176  * \returns True (non-zero) if valid.
1177  * \returns False (zero) if invalid.
1178  */
1179 int ast_ari_validate_message(struct ast_json *json);
1180 
1181 /*!
1182  * \brief Function pointer to ast_ari_validate_message().
1183  *
1184  * See \ref ast_ari_model_validators.h for more details.
1185  */
1187 
1188 /*!
1189  * \brief Validator for MissingParams.
1190  *
1191  * Error event sent when required params are missing.
1192  *
1193  * \param json JSON object to validate.
1194  * \returns True (non-zero) if valid.
1195  * \returns False (zero) if invalid.
1196  */
1197 int ast_ari_validate_missing_params(struct ast_json *json);
1198 
1199 /*!
1200  * \brief Function pointer to ast_ari_validate_missing_params().
1201  *
1202  * See \ref ast_ari_model_validators.h for more details.
1203  */
1205 
1206 /*!
1207  * \brief Validator for Peer.
1208  *
1209  * Detailed information about a remote peer that communicates with Asterisk.
1210  *
1211  * \param json JSON object to validate.
1212  * \returns True (non-zero) if valid.
1213  * \returns False (zero) if invalid.
1214  */
1215 int ast_ari_validate_peer(struct ast_json *json);
1216 
1217 /*!
1218  * \brief Function pointer to ast_ari_validate_peer().
1219  *
1220  * See \ref ast_ari_model_validators.h for more details.
1221  */
1223 
1224 /*!
1225  * \brief Validator for PeerStatusChange.
1226  *
1227  * The state of a peer associated with an endpoint has changed.
1228  *
1229  * \param json JSON object to validate.
1230  * \returns True (non-zero) if valid.
1231  * \returns False (zero) if invalid.
1232  */
1234 
1235 /*!
1236  * \brief Function pointer to ast_ari_validate_peer_status_change().
1237  *
1238  * See \ref ast_ari_model_validators.h for more details.
1239  */
1241 
1242 /*!
1243  * \brief Validator for PlaybackContinuing.
1244  *
1245  * Event showing the continuation of a media playback operation from one media URI to the next in the list.
1246  *
1247  * \param json JSON object to validate.
1248  * \returns True (non-zero) if valid.
1249  * \returns False (zero) if invalid.
1250  */
1252 
1253 /*!
1254  * \brief Function pointer to ast_ari_validate_playback_continuing().
1255  *
1256  * See \ref ast_ari_model_validators.h for more details.
1257  */
1259 
1260 /*!
1261  * \brief Validator for PlaybackFinished.
1262  *
1263  * Event showing the completion of a media playback operation.
1264  *
1265  * \param json JSON object to validate.
1266  * \returns True (non-zero) if valid.
1267  * \returns False (zero) if invalid.
1268  */
1270 
1271 /*!
1272  * \brief Function pointer to ast_ari_validate_playback_finished().
1273  *
1274  * See \ref ast_ari_model_validators.h for more details.
1275  */
1277 
1278 /*!
1279  * \brief Validator for PlaybackStarted.
1280  *
1281  * Event showing the start of a media playback operation.
1282  *
1283  * \param json JSON object to validate.
1284  * \returns True (non-zero) if valid.
1285  * \returns False (zero) if invalid.
1286  */
1288 
1289 /*!
1290  * \brief Function pointer to ast_ari_validate_playback_started().
1291  *
1292  * See \ref ast_ari_model_validators.h for more details.
1293  */
1295 
1296 /*!
1297  * \brief Validator for RecordingFailed.
1298  *
1299  * Event showing failure of a recording operation.
1300  *
1301  * \param json JSON object to validate.
1302  * \returns True (non-zero) if valid.
1303  * \returns False (zero) if invalid.
1304  */
1306 
1307 /*!
1308  * \brief Function pointer to ast_ari_validate_recording_failed().
1309  *
1310  * See \ref ast_ari_model_validators.h for more details.
1311  */
1313 
1314 /*!
1315  * \brief Validator for RecordingFinished.
1316  *
1317  * Event showing the completion of a recording operation.
1318  *
1319  * \param json JSON object to validate.
1320  * \returns True (non-zero) if valid.
1321  * \returns False (zero) if invalid.
1322  */
1324 
1325 /*!
1326  * \brief Function pointer to ast_ari_validate_recording_finished().
1327  *
1328  * See \ref ast_ari_model_validators.h for more details.
1329  */
1331 
1332 /*!
1333  * \brief Validator for RecordingStarted.
1334  *
1335  * Event showing the start of a recording operation.
1336  *
1337  * \param json JSON object to validate.
1338  * \returns True (non-zero) if valid.
1339  * \returns False (zero) if invalid.
1340  */
1342 
1343 /*!
1344  * \brief Function pointer to ast_ari_validate_recording_started().
1345  *
1346  * See \ref ast_ari_model_validators.h for more details.
1347  */
1349 
1350 /*!
1351  * \brief Validator for StasisEnd.
1352  *
1353  * Notification that a channel has left a Stasis application.
1354  *
1355  * \param json JSON object to validate.
1356  * \returns True (non-zero) if valid.
1357  * \returns False (zero) if invalid.
1358  */
1359 int ast_ari_validate_stasis_end(struct ast_json *json);
1360 
1361 /*!
1362  * \brief Function pointer to ast_ari_validate_stasis_end().
1363  *
1364  * See \ref ast_ari_model_validators.h for more details.
1365  */
1367 
1368 /*!
1369  * \brief Validator for StasisStart.
1370  *
1371  * Notification that a channel has entered a Stasis application.
1372  *
1373  * \param json JSON object to validate.
1374  * \returns True (non-zero) if valid.
1375  * \returns False (zero) if invalid.
1376  */
1377 int ast_ari_validate_stasis_start(struct ast_json *json);
1378 
1379 /*!
1380  * \brief Function pointer to ast_ari_validate_stasis_start().
1381  *
1382  * See \ref ast_ari_model_validators.h for more details.
1383  */
1385 
1386 /*!
1387  * \brief Validator for TextMessageReceived.
1388  *
1389  * A text message was received from an endpoint.
1390  *
1391  * \param json JSON object to validate.
1392  * \returns True (non-zero) if valid.
1393  * \returns False (zero) if invalid.
1394  */
1396 
1397 /*!
1398  * \brief Function pointer to ast_ari_validate_text_message_received().
1399  *
1400  * See \ref ast_ari_model_validators.h for more details.
1401  */
1403 
1404 /*!
1405  * \brief Validator for Application.
1406  *
1407  * Details of a Stasis application
1408  *
1409  * \param json JSON object to validate.
1410  * \returns True (non-zero) if valid.
1411  * \returns False (zero) if invalid.
1412  */
1413 int ast_ari_validate_application(struct ast_json *json);
1414 
1415 /*!
1416  * \brief Function pointer to ast_ari_validate_application().
1417  *
1418  * See \ref ast_ari_model_validators.h for more details.
1419  */
1421 
1422 /*
1423  * JSON models
1424  *
1425  * AsteriskInfo
1426  * - build: BuildInfo
1427  * - config: ConfigInfo
1428  * - status: StatusInfo
1429  * - system: SystemInfo
1430  * AsteriskPing
1431  * - asterisk_id: string (required)
1432  * - ping: string (required)
1433  * - timestamp: string (required)
1434  * BuildInfo
1435  * - date: string (required)
1436  * - kernel: string (required)
1437  * - machine: string (required)
1438  * - options: string (required)
1439  * - os: string (required)
1440  * - user: string (required)
1441  * ConfigInfo
1442  * - default_language: string (required)
1443  * - max_channels: int
1444  * - max_load: double
1445  * - max_open_files: int
1446  * - name: string (required)
1447  * - setid: SetId (required)
1448  * ConfigTuple
1449  * - attribute: string (required)
1450  * - value: string (required)
1451  * LogChannel
1452  * - channel: string (required)
1453  * - configuration: string (required)
1454  * - status: string (required)
1455  * - type: string (required)
1456  * Module
1457  * - description: string (required)
1458  * - name: string (required)
1459  * - status: string (required)
1460  * - support_level: string (required)
1461  * - use_count: int (required)
1462  * SetId
1463  * - group: string (required)
1464  * - user: string (required)
1465  * StatusInfo
1466  * - last_reload_time: Date (required)
1467  * - startup_time: Date (required)
1468  * SystemInfo
1469  * - entity_id: string (required)
1470  * - version: string (required)
1471  * Variable
1472  * - value: string (required)
1473  * Endpoint
1474  * - channel_ids: List[string] (required)
1475  * - resource: string (required)
1476  * - state: string
1477  * - technology: string (required)
1478  * TextMessage
1479  * - body: string (required)
1480  * - from: string (required)
1481  * - to: string (required)
1482  * - variables: object
1483  * CallerID
1484  * - name: string (required)
1485  * - number: string (required)
1486  * Channel
1487  * - accountcode: string (required)
1488  * - caller: CallerID (required)
1489  * - channelvars: object
1490  * - connected: CallerID (required)
1491  * - creationtime: Date (required)
1492  * - dialplan: DialplanCEP (required)
1493  * - id: string (required)
1494  * - language: string (required)
1495  * - name: string (required)
1496  * - state: string (required)
1497  * Dialed
1498  * DialplanCEP
1499  * - app_data: string (required)
1500  * - app_name: string (required)
1501  * - context: string (required)
1502  * - exten: string (required)
1503  * - priority: long (required)
1504  * RTPstat
1505  * - channel_uniqueid: string (required)
1506  * - local_maxjitter: double
1507  * - local_maxrxploss: double
1508  * - local_minjitter: double
1509  * - local_minrxploss: double
1510  * - local_normdevjitter: double
1511  * - local_normdevrxploss: double
1512  * - local_ssrc: int (required)
1513  * - local_stdevjitter: double
1514  * - local_stdevrxploss: double
1515  * - maxrtt: double
1516  * - minrtt: double
1517  * - normdevrtt: double
1518  * - remote_maxjitter: double
1519  * - remote_maxrxploss: double
1520  * - remote_minjitter: double
1521  * - remote_minrxploss: double
1522  * - remote_normdevjitter: double
1523  * - remote_normdevrxploss: double
1524  * - remote_ssrc: int (required)
1525  * - remote_stdevjitter: double
1526  * - remote_stdevrxploss: double
1527  * - rtt: double
1528  * - rxcount: int (required)
1529  * - rxjitter: double
1530  * - rxoctetcount: int (required)
1531  * - rxploss: int (required)
1532  * - stdevrtt: double
1533  * - txcount: int (required)
1534  * - txjitter: double
1535  * - txoctetcount: int (required)
1536  * - txploss: int (required)
1537  * Bridge
1538  * - bridge_class: string (required)
1539  * - bridge_type: string (required)
1540  * - channels: List[string] (required)
1541  * - creationtime: Date (required)
1542  * - creator: string (required)
1543  * - id: string (required)
1544  * - name: string (required)
1545  * - technology: string (required)
1546  * - video_mode: string
1547  * - video_source_id: string
1548  * LiveRecording
1549  * - cause: string
1550  * - duration: int
1551  * - format: string (required)
1552  * - name: string (required)
1553  * - silence_duration: int
1554  * - state: string (required)
1555  * - talking_duration: int
1556  * - target_uri: string (required)
1557  * StoredRecording
1558  * - format: string (required)
1559  * - name: string (required)
1560  * FormatLangPair
1561  * - format: string (required)
1562  * - language: string (required)
1563  * Sound
1564  * - formats: List[FormatLangPair] (required)
1565  * - id: string (required)
1566  * - text: string
1567  * Playback
1568  * - id: string (required)
1569  * - language: string
1570  * - media_uri: string (required)
1571  * - next_media_uri: string
1572  * - state: string (required)
1573  * - target_uri: string (required)
1574  * DeviceState
1575  * - name: string (required)
1576  * - state: string (required)
1577  * Mailbox
1578  * - name: string (required)
1579  * - new_messages: int (required)
1580  * - old_messages: int (required)
1581  * ApplicationMoveFailed
1582  * - asterisk_id: string
1583  * - type: string (required)
1584  * - application: string (required)
1585  * - timestamp: Date (required)
1586  * - args: List[string] (required)
1587  * - channel: Channel (required)
1588  * - destination: string (required)
1589  * ApplicationReplaced
1590  * - asterisk_id: string
1591  * - type: string (required)
1592  * - application: string (required)
1593  * - timestamp: Date (required)
1594  * BridgeAttendedTransfer
1595  * - asterisk_id: string
1596  * - type: string (required)
1597  * - application: string (required)
1598  * - timestamp: Date (required)
1599  * - destination_application: string
1600  * - destination_bridge: string
1601  * - destination_link_first_leg: Channel
1602  * - destination_link_second_leg: Channel
1603  * - destination_threeway_bridge: Bridge
1604  * - destination_threeway_channel: Channel
1605  * - destination_type: string (required)
1606  * - is_external: boolean (required)
1607  * - replace_channel: Channel
1608  * - result: string (required)
1609  * - transfer_target: Channel
1610  * - transferee: Channel
1611  * - transferer_first_leg: Channel (required)
1612  * - transferer_first_leg_bridge: Bridge
1613  * - transferer_second_leg: Channel (required)
1614  * - transferer_second_leg_bridge: Bridge
1615  * BridgeBlindTransfer
1616  * - asterisk_id: string
1617  * - type: string (required)
1618  * - application: string (required)
1619  * - timestamp: Date (required)
1620  * - bridge: Bridge
1621  * - channel: Channel (required)
1622  * - context: string (required)
1623  * - exten: string (required)
1624  * - is_external: boolean (required)
1625  * - replace_channel: Channel
1626  * - result: string (required)
1627  * - transferee: Channel
1628  * BridgeCreated
1629  * - asterisk_id: string
1630  * - type: string (required)
1631  * - application: string (required)
1632  * - timestamp: Date (required)
1633  * - bridge: Bridge (required)
1634  * BridgeDestroyed
1635  * - asterisk_id: string
1636  * - type: string (required)
1637  * - application: string (required)
1638  * - timestamp: Date (required)
1639  * - bridge: Bridge (required)
1640  * BridgeMerged
1641  * - asterisk_id: string
1642  * - type: string (required)
1643  * - application: string (required)
1644  * - timestamp: Date (required)
1645  * - bridge: Bridge (required)
1646  * - bridge_from: Bridge (required)
1647  * BridgeVideoSourceChanged
1648  * - asterisk_id: string
1649  * - type: string (required)
1650  * - application: string (required)
1651  * - timestamp: Date (required)
1652  * - bridge: Bridge (required)
1653  * - old_video_source_id: string
1654  * ChannelCallerId
1655  * - asterisk_id: string
1656  * - type: string (required)
1657  * - application: string (required)
1658  * - timestamp: Date (required)
1659  * - caller_presentation: int (required)
1660  * - caller_presentation_txt: string (required)
1661  * - channel: Channel (required)
1662  * ChannelConnectedLine
1663  * - asterisk_id: string
1664  * - type: string (required)
1665  * - application: string (required)
1666  * - timestamp: Date (required)
1667  * - channel: Channel (required)
1668  * ChannelCreated
1669  * - asterisk_id: string
1670  * - type: string (required)
1671  * - application: string (required)
1672  * - timestamp: Date (required)
1673  * - channel: Channel (required)
1674  * ChannelDestroyed
1675  * - asterisk_id: string
1676  * - type: string (required)
1677  * - application: string (required)
1678  * - timestamp: Date (required)
1679  * - cause: int (required)
1680  * - cause_txt: string (required)
1681  * - channel: Channel (required)
1682  * ChannelDialplan
1683  * - asterisk_id: string
1684  * - type: string (required)
1685  * - application: string (required)
1686  * - timestamp: Date (required)
1687  * - channel: Channel (required)
1688  * - dialplan_app: string (required)
1689  * - dialplan_app_data: string (required)
1690  * ChannelDtmfReceived
1691  * - asterisk_id: string
1692  * - type: string (required)
1693  * - application: string (required)
1694  * - timestamp: Date (required)
1695  * - channel: Channel (required)
1696  * - digit: string (required)
1697  * - duration_ms: int (required)
1698  * ChannelEnteredBridge
1699  * - asterisk_id: string
1700  * - type: string (required)
1701  * - application: string (required)
1702  * - timestamp: Date (required)
1703  * - bridge: Bridge (required)
1704  * - channel: Channel
1705  * ChannelHangupRequest
1706  * - asterisk_id: string
1707  * - type: string (required)
1708  * - application: string (required)
1709  * - timestamp: Date (required)
1710  * - cause: int
1711  * - channel: Channel (required)
1712  * - soft: boolean
1713  * ChannelHold
1714  * - asterisk_id: string
1715  * - type: string (required)
1716  * - application: string (required)
1717  * - timestamp: Date (required)
1718  * - channel: Channel (required)
1719  * - musicclass: string
1720  * ChannelLeftBridge
1721  * - asterisk_id: string
1722  * - type: string (required)
1723  * - application: string (required)
1724  * - timestamp: Date (required)
1725  * - bridge: Bridge (required)
1726  * - channel: Channel (required)
1727  * ChannelStateChange
1728  * - asterisk_id: string
1729  * - type: string (required)
1730  * - application: string (required)
1731  * - timestamp: Date (required)
1732  * - channel: Channel (required)
1733  * ChannelTalkingFinished
1734  * - asterisk_id: string
1735  * - type: string (required)
1736  * - application: string (required)
1737  * - timestamp: Date (required)
1738  * - channel: Channel (required)
1739  * - duration: int (required)
1740  * ChannelTalkingStarted
1741  * - asterisk_id: string
1742  * - type: string (required)
1743  * - application: string (required)
1744  * - timestamp: Date (required)
1745  * - channel: Channel (required)
1746  * ChannelUnhold
1747  * - asterisk_id: string
1748  * - type: string (required)
1749  * - application: string (required)
1750  * - timestamp: Date (required)
1751  * - channel: Channel (required)
1752  * ChannelUserevent
1753  * - asterisk_id: string
1754  * - type: string (required)
1755  * - application: string (required)
1756  * - timestamp: Date (required)
1757  * - bridge: Bridge
1758  * - channel: Channel
1759  * - endpoint: Endpoint
1760  * - eventname: string (required)
1761  * - userevent: object (required)
1762  * ChannelVarset
1763  * - asterisk_id: string
1764  * - type: string (required)
1765  * - application: string (required)
1766  * - timestamp: Date (required)
1767  * - channel: Channel
1768  * - value: string (required)
1769  * - variable: string (required)
1770  * ContactInfo
1771  * - aor: string (required)
1772  * - contact_status: string (required)
1773  * - roundtrip_usec: string
1774  * - uri: string (required)
1775  * ContactStatusChange
1776  * - asterisk_id: string
1777  * - type: string (required)
1778  * - application: string (required)
1779  * - timestamp: Date (required)
1780  * - contact_info: ContactInfo (required)
1781  * - endpoint: Endpoint (required)
1782  * DeviceStateChanged
1783  * - asterisk_id: string
1784  * - type: string (required)
1785  * - application: string (required)
1786  * - timestamp: Date (required)
1787  * - device_state: DeviceState (required)
1788  * Dial
1789  * - asterisk_id: string
1790  * - type: string (required)
1791  * - application: string (required)
1792  * - timestamp: Date (required)
1793  * - caller: Channel
1794  * - dialstatus: string (required)
1795  * - dialstring: string
1796  * - forward: string
1797  * - forwarded: Channel
1798  * - peer: Channel (required)
1799  * EndpointStateChange
1800  * - asterisk_id: string
1801  * - type: string (required)
1802  * - application: string (required)
1803  * - timestamp: Date (required)
1804  * - endpoint: Endpoint (required)
1805  * Event
1806  * - asterisk_id: string
1807  * - type: string (required)
1808  * - application: string (required)
1809  * - timestamp: Date (required)
1810  * Message
1811  * - asterisk_id: string
1812  * - type: string (required)
1813  * MissingParams
1814  * - asterisk_id: string
1815  * - type: string (required)
1816  * - params: List[string] (required)
1817  * Peer
1818  * - address: string
1819  * - cause: string
1820  * - peer_status: string (required)
1821  * - port: string
1822  * - time: string
1823  * PeerStatusChange
1824  * - asterisk_id: string
1825  * - type: string (required)
1826  * - application: string (required)
1827  * - timestamp: Date (required)
1828  * - endpoint: Endpoint (required)
1829  * - peer: Peer (required)
1830  * PlaybackContinuing
1831  * - asterisk_id: string
1832  * - type: string (required)
1833  * - application: string (required)
1834  * - timestamp: Date (required)
1835  * - playback: Playback (required)
1836  * PlaybackFinished
1837  * - asterisk_id: string
1838  * - type: string (required)
1839  * - application: string (required)
1840  * - timestamp: Date (required)
1841  * - playback: Playback (required)
1842  * PlaybackStarted
1843  * - asterisk_id: string
1844  * - type: string (required)
1845  * - application: string (required)
1846  * - timestamp: Date (required)
1847  * - playback: Playback (required)
1848  * RecordingFailed
1849  * - asterisk_id: string
1850  * - type: string (required)
1851  * - application: string (required)
1852  * - timestamp: Date (required)
1853  * - recording: LiveRecording (required)
1854  * RecordingFinished
1855  * - asterisk_id: string
1856  * - type: string (required)
1857  * - application: string (required)
1858  * - timestamp: Date (required)
1859  * - recording: LiveRecording (required)
1860  * RecordingStarted
1861  * - asterisk_id: string
1862  * - type: string (required)
1863  * - application: string (required)
1864  * - timestamp: Date (required)
1865  * - recording: LiveRecording (required)
1866  * StasisEnd
1867  * - asterisk_id: string
1868  * - type: string (required)
1869  * - application: string (required)
1870  * - timestamp: Date (required)
1871  * - channel: Channel (required)
1872  * StasisStart
1873  * - asterisk_id: string
1874  * - type: string (required)
1875  * - application: string (required)
1876  * - timestamp: Date (required)
1877  * - args: List[string] (required)
1878  * - channel: Channel (required)
1879  * - replace_channel: Channel
1880  * TextMessageReceived
1881  * - asterisk_id: string
1882  * - type: string (required)
1883  * - application: string (required)
1884  * - timestamp: Date (required)
1885  * - endpoint: Endpoint
1886  * - message: TextMessage (required)
1887  * Application
1888  * - bridge_ids: List[string] (required)
1889  * - channel_ids: List[string] (required)
1890  * - device_names: List[string] (required)
1891  * - endpoint_ids: List[string] (required)
1892  * - events_allowed: List[object] (required)
1893  * - events_disallowed: List[object] (required)
1894  * - name: string (required)
1895  */
1896 
1897 #endif /* _ASTERISK_ARI_MODEL_H */
int ast_ari_validate_recording_finished(struct ast_json *json)
Validator for RecordingFinished.
ari_validator ast_ari_validate_channel_created_fn(void)
Function pointer to ast_ari_validate_channel_created().
ari_validator ast_ari_validate_channel_entered_bridge_fn(void)
Function pointer to ast_ari_validate_channel_entered_bridge().
int ast_ari_validate_stasis_start(struct ast_json *json)
Validator for StasisStart.
ari_validator ast_ari_validate_contact_info_fn(void)
Function pointer to ast_ari_validate_contact_info().
int ast_ari_validate_sound(struct ast_json *json)
Validator for Sound.
ari_validator ast_ari_validate_device_state_changed_fn(void)
Function pointer to ast_ari_validate_device_state_changed().
int ast_ari_validate_bridge_blind_transfer(struct ast_json *json)
Validator for BridgeBlindTransfer.
int ast_ari_validate_asterisk_ping(struct ast_json *json)
Validator for AsteriskPing.
ari_validator ast_ari_validate_config_info_fn(void)
Function pointer to ast_ari_validate_config_info().
ari_validator ast_ari_validate_bridge_attended_transfer_fn(void)
Function pointer to ast_ari_validate_bridge_attended_transfer().
ari_validator ast_ari_validate_dial_fn(void)
Function pointer to ast_ari_validate_dial().
int ast_ari_validate_channel_caller_id(struct ast_json *json)
Validator for ChannelCallerId.
int(* ari_validator)(struct ast_json *json)
Function type for validator functions. Allows for.
ari_validator ast_ari_validate_asterisk_info_fn(void)
Function pointer to ast_ari_validate_asterisk_info().
ari_validator ast_ari_validate_recording_finished_fn(void)
Function pointer to ast_ari_validate_recording_finished().
int ast_ari_validate_channel_talking_started(struct ast_json *json)
Validator for ChannelTalkingStarted.
ari_validator ast_ari_validate_playback_continuing_fn(void)
Function pointer to ast_ari_validate_playback_continuing().
ari_validator ast_ari_validate_playback_finished_fn(void)
Function pointer to ast_ari_validate_playback_finished().
ari_validator ast_ari_validate_channel_varset_fn(void)
Function pointer to ast_ari_validate_channel_varset().
int ast_ari_validate_device_state(struct ast_json *json)
Validator for DeviceState.
ari_validator ast_ari_validate_set_id_fn(void)
Function pointer to ast_ari_validate_set_id().
ari_validator ast_ari_validate_missing_params_fn(void)
Function pointer to ast_ari_validate_missing_params().
int ast_ari_validate_playback_finished(struct ast_json *json)
Validator for PlaybackFinished.
int ast_ari_validate_config_info(struct ast_json *json)
Validator for ConfigInfo.
int ast_ari_validate_bridge(struct ast_json *json)
Validator for Bridge.
int ast_ari_validate_channel_created(struct ast_json *json)
Validator for ChannelCreated.
ari_validator ast_ari_validate_channel_dtmf_received_fn(void)
Function pointer to ast_ari_validate_channel_dtmf_received().
int ast_ari_validate_status_info(struct ast_json *json)
Validator for StatusInfo.
ari_validator ast_ari_validate_text_message_received_fn(void)
Function pointer to ast_ari_validate_text_message_received().
ari_validator ast_ari_validate_channel_unhold_fn(void)
Function pointer to ast_ari_validate_channel_unhold().
int ast_ari_validate_build_info(struct ast_json *json)
Validator for BuildInfo.
int ast_ari_validate_channel_destroyed(struct ast_json *json)
Validator for ChannelDestroyed.
ari_validator ast_ari_validate_channel_dialplan_fn(void)
Function pointer to ast_ari_validate_channel_dialplan().
ari_validator ast_ari_validate_stasis_end_fn(void)
Function pointer to ast_ari_validate_stasis_end().
ari_validator ast_ari_validate_channel_hold_fn(void)
Function pointer to ast_ari_validate_channel_hold().
int ast_ari_validate_application_replaced(struct ast_json *json)
Validator for ApplicationReplaced.
int ast_ari_validate_boolean(struct ast_json *json)
Validator for native Swagger boolean.
int ast_ari_validate_peer_status_change(struct ast_json *json)
Validator for PeerStatusChange.
int ast_ari_validate_channel_unhold(struct ast_json *json)
Validator for ChannelUnhold.
ari_validator ast_ari_validate_bridge_destroyed_fn(void)
Function pointer to ast_ari_validate_bridge_destroyed().
int ast_ari_validate_contact_status_change(struct ast_json *json)
Validator for ContactStatusChange.
ari_validator ast_ari_validate_channel_talking_started_fn(void)
Function pointer to ast_ari_validate_channel_talking_started().
ari_validator ast_ari_validate_module_fn(void)
Function pointer to ast_ari_validate_module().
int ast_ari_validate_dialed(struct ast_json *json)
Validator for Dialed.
ari_validator ast_ari_validate_format_lang_pair_fn(void)
Function pointer to ast_ari_validate_format_lang_pair().
int ast_ari_validate_void(struct ast_json *json)
Validator for native Swagger void.
Definition: res_ari_model.c:91
ari_validator ast_ari_validate_channel_state_change_fn(void)
Function pointer to ast_ari_validate_channel_state_change().
int ast_ari_validate_bridge_video_source_changed(struct ast_json *json)
Validator for BridgeVideoSourceChanged.
int ast_ari_validate_endpoint(struct ast_json *json)
Validator for Endpoint.
int ast_ari_validate_channel_entered_bridge(struct ast_json *json)
Validator for ChannelEnteredBridge.
ari_validator ast_ari_validate_system_info_fn(void)
Function pointer to ast_ari_validate_system_info().
int ast_ari_validate_system_info(struct ast_json *json)
Validator for SystemInfo.
int ast_ari_validate_date(struct ast_json *json)
Validator for native Swagger date.
int ast_ari_validate_bridge_attended_transfer(struct ast_json *json)
Validator for BridgeAttendedTransfer.
ari_validator ast_ari_validate_live_recording_fn(void)
Function pointer to ast_ari_validate_live_recording().
int ast_ari_validate_channel(struct ast_json *json)
Validator for Channel.
int ast_ari_validate_peer(struct ast_json *json)
Validator for Peer.
int ast_ari_validate_config_tuple(struct ast_json *json)
Validator for ConfigTuple.
ari_validator ast_ari_validate_mailbox_fn(void)
Function pointer to ast_ari_validate_mailbox().
Asterisk JSON abstraction layer.
int ast_ari_validate_format_lang_pair(struct ast_json *json)
Validator for FormatLangPair.
ari_validator ast_ari_validate_peer_fn(void)
Function pointer to ast_ari_validate_peer().
int ast_ari_validate_channel_left_bridge(struct ast_json *json)
Validator for ChannelLeftBridge.
int ast_ari_validate_module(struct ast_json *json)
Validator for Module.
ari_validator ast_ari_validate_dialed_fn(void)
Function pointer to ast_ari_validate_dialed().
int ast_ari_validate_rtpstat(struct ast_json *json)
Validator for RTPstat.
int ast_ari_validate_channel_state_change(struct ast_json *json)
Validator for ChannelStateChange.
ari_validator ast_ari_validate_stasis_start_fn(void)
Function pointer to ast_ari_validate_stasis_start().
ari_validator ast_ari_validate_stored_recording_fn(void)
Function pointer to ast_ari_validate_stored_recording().
int ast_ari_validate_double(struct ast_json *json)
Validator for native Swagger double.
int ast_ari_validate_channel_talking_finished(struct ast_json *json)
Validator for ChannelTalkingFinished.
ari_validator ast_ari_validate_channel_left_bridge_fn(void)
Function pointer to ast_ari_validate_channel_left_bridge().
ari_validator ast_ari_validate_channel_fn(void)
Function pointer to ast_ari_validate_channel().
ari_validator ast_ari_validate_endpoint_fn(void)
Function pointer to ast_ari_validate_endpoint().
ari_validator ast_ari_validate_application_replaced_fn(void)
Function pointer to ast_ari_validate_application_replaced().
ari_validator ast_ari_validate_status_info_fn(void)
Function pointer to ast_ari_validate_status_info().
int ast_ari_validate_dial(struct ast_json *json)
Validator for Dial.
int ast_ari_validate_message(struct ast_json *json)
Validator for Message.
int ast_ari_validate_asterisk_info(struct ast_json *json)
Validator for AsteriskInfo.
int ast_ari_validate_device_state_changed(struct ast_json *json)
Validator for DeviceStateChanged.
ari_validator ast_ari_validate_channel_talking_finished_fn(void)
Function pointer to ast_ari_validate_channel_talking_finished().
int ast_ari_validate_channel_dtmf_received(struct ast_json *json)
Validator for ChannelDtmfReceived.
int ast_ari_validate_long(struct ast_json *json)
Validator for native Swagger long.
int ast_ari_validate_caller_id(struct ast_json *json)
Validator for CallerID.
int ast_ari_validate_channel_varset(struct ast_json *json)
Validator for ChannelVarset.
int ast_ari_validate_log_channel(struct ast_json *json)
Validator for LogChannel.
ari_validator ast_ari_validate_channel_hangup_request_fn(void)
Function pointer to ast_ari_validate_channel_hangup_request().
int ast_ari_validate_bridge_destroyed(struct ast_json *json)
Validator for BridgeDestroyed.
ari_validator ast_ari_validate_device_state_fn(void)
Function pointer to ast_ari_validate_device_state().
int ast_ari_validate_stasis_end(struct ast_json *json)
Validator for StasisEnd.
int ast_ari_validate_event(struct ast_json *json)
Validator for Event.
ari_validator ast_ari_validate_recording_started_fn(void)
Function pointer to ast_ari_validate_recording_started().
ari_validator ast_ari_validate_rtpstat_fn(void)
Function pointer to ast_ari_validate_rtpstat().
ari_validator ast_ari_validate_bridge_created_fn(void)
Function pointer to ast_ari_validate_bridge_created().
ari_validator ast_ari_validate_asterisk_ping_fn(void)
Function pointer to ast_ari_validate_asterisk_ping().
int ast_ari_validate_text_message(struct ast_json *json)
Validator for TextMessage.
ari_validator ast_ari_validate_channel_userevent_fn(void)
Function pointer to ast_ari_validate_channel_userevent().
int ast_ari_validate_int(struct ast_json *json)
Validator for native Swagger int.
ari_validator ast_ari_validate_recording_failed_fn(void)
Function pointer to ast_ari_validate_recording_failed().
int ast_ari_validate_bridge_created(struct ast_json *json)
Validator for BridgeCreated.
int ast_ari_validate_application_move_failed(struct ast_json *json)
Validator for ApplicationMoveFailed.
ari_validator ast_ari_validate_bridge_blind_transfer_fn(void)
Function pointer to ast_ari_validate_bridge_blind_transfer().
ari_validator ast_ari_validate_bridge_merged_fn(void)
Function pointer to ast_ari_validate_bridge_merged().
int ast_ari_validate_channel_dialplan(struct ast_json *json)
Validator for ChannelDialplan.
ari_validator ast_ari_validate_bridge_video_source_changed_fn(void)
Function pointer to ast_ari_validate_bridge_video_source_changed().
ari_validator ast_ari_validate_variable_fn(void)
Function pointer to ast_ari_validate_variable().
int ast_ari_validate_playback_continuing(struct ast_json *json)
Validator for PlaybackContinuing.
ari_validator ast_ari_validate_application_fn(void)
Function pointer to ast_ari_validate_application().
ari_validator ast_ari_validate_channel_connected_line_fn(void)
Function pointer to ast_ari_validate_channel_connected_line().
ari_validator ast_ari_validate_config_tuple_fn(void)
Function pointer to ast_ari_validate_config_tuple().
int ast_ari_validate_channel_userevent(struct ast_json *json)
Validator for ChannelUserevent.
ari_validator ast_ari_validate_endpoint_state_change_fn(void)
Function pointer to ast_ari_validate_endpoint_state_change().
ari_validator ast_ari_validate_sound_fn(void)
Function pointer to ast_ari_validate_sound().
ari_validator ast_ari_validate_log_channel_fn(void)
Function pointer to ast_ari_validate_log_channel().
ari_validator ast_ari_validate_message_fn(void)
Function pointer to ast_ari_validate_message().
int ast_ari_validate_object(struct ast_json *json)
Validator for native Swagger object.
Definition: res_ari_model.c:96
int ast_ari_validate_playback(struct ast_json *json)
Validator for Playback.
ari_validator ast_ari_validate_peer_status_change_fn(void)
Function pointer to ast_ari_validate_peer_status_change().
int ast_ari_validate_channel_hangup_request(struct ast_json *json)
Validator for ChannelHangupRequest.
int ast_ari_validate_byte(struct ast_json *json)
Validator for native Swagger byte.
ari_validator ast_ari_validate_channel_destroyed_fn(void)
Function pointer to ast_ari_validate_channel_destroyed().
int ast_ari_validate_set_id(struct ast_json *json)
Validator for SetId.
ari_validator ast_ari_validate_contact_status_change_fn(void)
Function pointer to ast_ari_validate_contact_status_change().
int ast_ari_validate_live_recording(struct ast_json *json)
Validator for LiveRecording.
ari_validator ast_ari_validate_bridge_fn(void)
Function pointer to ast_ari_validate_bridge().
int ast_ari_validate_contact_info(struct ast_json *json)
Validator for ContactInfo.
int ast_ari_validate_string(struct ast_json *json)
Validator for native Swagger string.
int ast_ari_validate_mailbox(struct ast_json *json)
Validator for Mailbox.
ari_validator ast_ari_validate_build_info_fn(void)
Function pointer to ast_ari_validate_build_info().
int ast_ari_validate_application(struct ast_json *json)
Validator for Application.
int ast_ari_validate_bridge_merged(struct ast_json *json)
Validator for BridgeMerged.
int ast_ari_validate_text_message_received(struct ast_json *json)
Validator for TextMessageReceived.
int ast_ari_validate_missing_params(struct ast_json *json)
Validator for MissingParams.
ari_validator ast_ari_validate_playback_fn(void)
Function pointer to ast_ari_validate_playback().
ari_validator ast_ari_validate_caller_id_fn(void)
Function pointer to ast_ari_validate_caller_id().
ari_validator ast_ari_validate_playback_started_fn(void)
Function pointer to ast_ari_validate_playback_started().
int ast_ari_validate_channel_hold(struct ast_json *json)
Validator for ChannelHold.
Abstract JSON element (object, array, string, int, ...).
int ast_ari_validate_recording_started(struct ast_json *json)
Validator for RecordingStarted.
int ast_ari_validate_endpoint_state_change(struct ast_json *json)
Validator for EndpointStateChange.
int ast_ari_validate_channel_connected_line(struct ast_json *json)
Validator for ChannelConnectedLine.
int ast_ari_validate_variable(struct ast_json *json)
Validator for Variable.
ari_validator ast_ari_validate_text_message_fn(void)
Function pointer to ast_ari_validate_text_message().
ari_validator ast_ari_validate_application_move_failed_fn(void)
Function pointer to ast_ari_validate_application_move_failed().
int ast_ari_validate_list(struct ast_json *json, int(*fn)(struct ast_json *))
Validator for a Swagger List[]/JSON array.
ari_validator ast_ari_validate_channel_caller_id_fn(void)
Function pointer to ast_ari_validate_channel_caller_id().
int ast_ari_validate_stored_recording(struct ast_json *json)
Validator for StoredRecording.
int ast_ari_validate_playback_started(struct ast_json *json)
Validator for PlaybackStarted.
int ast_ari_validate_float(struct ast_json *json)
Validator for native Swagger float.
ari_validator ast_ari_validate_dialplan_cep_fn(void)
Function pointer to ast_ari_validate_dialplan_cep().
int ast_ari_validate_dialplan_cep(struct ast_json *json)
Validator for DialplanCEP.
int ast_ari_validate_recording_failed(struct ast_json *json)
Validator for RecordingFailed.
ari_validator ast_ari_validate_event_fn(void)
Function pointer to ast_ari_validate_event().