google-api-client 0.51.0 → 0.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +0 -14
  3. data/CHANGELOG.md +106 -0
  4. data/OVERVIEW.md +36 -27
  5. data/generated/google/apis/accesscontextmanager_v1/classes.rb +326 -0
  6. data/generated/google/apis/accesscontextmanager_v1/representations.rb +139 -0
  7. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  8. data/generated/google/apis/admin_datatransfer_v1/classes.rb +6 -16
  9. data/generated/google/apis/admin_datatransfer_v1/service.rb +3 -3
  10. data/generated/google/apis/admin_datatransfer_v1.rb +2 -2
  11. data/generated/google/apis/admin_directory_v1/classes.rb +453 -321
  12. data/generated/google/apis/admin_directory_v1/representations.rb +15 -15
  13. data/generated/google/apis/admin_directory_v1/service.rb +325 -185
  14. data/generated/google/apis/admin_directory_v1.rb +2 -2
  15. data/generated/google/apis/admin_reports_v1/classes.rb +48 -43
  16. data/generated/google/apis/admin_reports_v1/service.rb +198 -179
  17. data/generated/google/apis/admin_reports_v1.rb +2 -2
  18. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  19. data/generated/google/apis/analytics_v3/service.rb +1 -1
  20. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +10 -2
  21. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +1 -0
  22. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +17 -13
  23. data/generated/google/apis/analyticsadmin_v1alpha.rb +2 -2
  24. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +11 -11
  25. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  26. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  27. data/generated/google/apis/apigateway_v1/classes.rb +1116 -0
  28. data/generated/google/apis/apigateway_v1/representations.rb +442 -0
  29. data/generated/google/apis/apigateway_v1/service.rb +1172 -0
  30. data/{lib/google/apis/generator/templates/classes.rb.tmpl → generated/google/apis/apigateway_v1.rb} +14 -9
  31. data/generated/google/apis/apigateway_v1beta/classes.rb +22 -17
  32. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -1
  33. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  34. data/generated/google/apis/apigee_v1/classes.rb +95 -22
  35. data/generated/google/apis/apigee_v1/representations.rb +42 -0
  36. data/generated/google/apis/apigee_v1/service.rb +256 -48
  37. data/generated/google/apis/apigee_v1.rb +1 -1
  38. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  39. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  40. data/generated/google/apis/appengine_v1.rb +1 -1
  41. data/generated/google/apis/artifactregistry_v1/classes.rb +242 -0
  42. data/generated/google/apis/artifactregistry_v1/representations.rb +116 -0
  43. data/generated/google/apis/artifactregistry_v1/service.rb +210 -0
  44. data/generated/google/apis/artifactregistry_v1.rb +38 -0
  45. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +0 -120
  46. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +0 -62
  47. data/generated/google/apis/artifactregistry_v1beta1/service.rb +4 -1
  48. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  49. data/generated/google/apis/artifactregistry_v1beta2/classes.rb +0 -120
  50. data/generated/google/apis/artifactregistry_v1beta2/representations.rb +0 -62
  51. data/generated/google/apis/artifactregistry_v1beta2/service.rb +4 -1
  52. data/generated/google/apis/artifactregistry_v1beta2.rb +1 -1
  53. data/generated/google/apis/chat_v1/service.rb +132 -0
  54. data/generated/google/apis/chat_v1.rb +1 -1
  55. data/generated/google/apis/cloudasset_v1/classes.rb +326 -0
  56. data/generated/google/apis/cloudasset_v1/representations.rb +139 -0
  57. data/generated/google/apis/cloudasset_v1.rb +1 -1
  58. data/generated/google/apis/cloudasset_v1beta1/classes.rb +326 -0
  59. data/generated/google/apis/cloudasset_v1beta1/representations.rb +139 -0
  60. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  61. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +326 -0
  62. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +139 -0
  63. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  64. data/generated/google/apis/cloudbuild_v1/classes.rb +3 -3
  65. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  66. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +3 -3
  67. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  68. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +3 -3
  69. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  70. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  71. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  72. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  73. data/generated/google/apis/cloudidentity_v1/classes.rb +240 -0
  74. data/generated/google/apis/cloudidentity_v1/representations.rb +125 -0
  75. data/generated/google/apis/cloudidentity_v1/service.rb +202 -2
  76. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  77. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1 -1
  78. data/generated/google/apis/cloudidentity_v1beta1/service.rb +8 -2
  79. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  80. data/generated/google/apis/cloudkms_v1/classes.rb +0 -6
  81. data/generated/google/apis/cloudkms_v1/representations.rb +0 -1
  82. data/generated/google/apis/cloudkms_v1.rb +1 -1
  83. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +0 -26
  84. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +0 -24
  85. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  86. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +0 -26
  87. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +0 -24
  88. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  89. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +0 -26
  90. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +0 -24
  91. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  92. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +0 -26
  93. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +0 -24
  94. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  95. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +19 -0
  96. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +2 -0
  97. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +12 -2
  98. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  99. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +59 -0
  100. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +19 -0
  101. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  102. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +102 -0
  103. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +35 -0
  104. data/generated/google/apis/cloudtasks_v2beta3/service.rb +16 -2
  105. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  106. data/generated/google/apis/composer_v1beta1/classes.rb +64 -0
  107. data/generated/google/apis/composer_v1beta1/representations.rb +18 -0
  108. data/generated/google/apis/composer_v1beta1.rb +1 -1
  109. data/generated/google/apis/compute_alpha/classes.rb +1071 -341
  110. data/generated/google/apis/compute_alpha/representations.rb +248 -19
  111. data/generated/google/apis/compute_alpha/service.rb +291 -15
  112. data/generated/google/apis/compute_alpha.rb +1 -1
  113. data/generated/google/apis/compute_beta/classes.rb +926 -283
  114. data/generated/google/apis/compute_beta/representations.rb +221 -18
  115. data/generated/google/apis/compute_beta/service.rb +24 -15
  116. data/generated/google/apis/compute_beta.rb +1 -1
  117. data/generated/google/apis/compute_v1/classes.rb +419 -158
  118. data/generated/google/apis/compute_v1/representations.rb +55 -0
  119. data/generated/google/apis/compute_v1/service.rb +9 -7
  120. data/generated/google/apis/compute_v1.rb +1 -1
  121. data/generated/google/apis/container_v1/classes.rb +55 -16
  122. data/generated/google/apis/container_v1/representations.rb +17 -0
  123. data/generated/google/apis/container_v1/service.rb +4 -2
  124. data/generated/google/apis/container_v1.rb +1 -1
  125. data/generated/google/apis/container_v1beta1/classes.rb +31 -20
  126. data/generated/google/apis/container_v1beta1/representations.rb +2 -0
  127. data/generated/google/apis/container_v1beta1/service.rb +6 -2
  128. data/generated/google/apis/container_v1beta1.rb +1 -1
  129. data/generated/google/apis/content_v2_1/classes.rb +450 -7
  130. data/generated/google/apis/content_v2_1/representations.rb +188 -0
  131. data/generated/google/apis/content_v2_1/service.rb +116 -0
  132. data/generated/google/apis/content_v2_1.rb +1 -1
  133. data/generated/google/apis/datacatalog_v1beta1/classes.rb +6 -0
  134. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -0
  135. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  136. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  137. data/generated/google/apis/datalabeling_v1beta1.rb +1 -1
  138. data/generated/google/apis/datamigration_v1beta1/classes.rb +0 -6
  139. data/generated/google/apis/datamigration_v1beta1/representations.rb +0 -1
  140. data/generated/google/apis/datamigration_v1beta1.rb +1 -1
  141. data/generated/google/apis/dataproc_v1/classes.rb +29 -1
  142. data/generated/google/apis/dataproc_v1/representations.rb +14 -0
  143. data/generated/google/apis/dataproc_v1/service.rb +42 -0
  144. data/generated/google/apis/dataproc_v1.rb +1 -1
  145. data/generated/google/apis/dataproc_v1beta2/classes.rb +29 -1
  146. data/generated/google/apis/dataproc_v1beta2/representations.rb +14 -0
  147. data/generated/google/apis/dataproc_v1beta2/service.rb +42 -0
  148. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  149. data/generated/google/apis/deploymentmanager_alpha/classes.rb +276 -644
  150. data/generated/google/apis/deploymentmanager_alpha/representations.rb +10 -143
  151. data/generated/google/apis/deploymentmanager_alpha/service.rb +247 -398
  152. data/generated/google/apis/deploymentmanager_alpha.rb +6 -5
  153. data/generated/google/apis/deploymentmanager_v2/service.rb +5 -25
  154. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  155. data/generated/google/apis/deploymentmanager_v2beta/service.rb +8 -40
  156. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  157. data/generated/google/apis/dialogflow_v2/classes.rb +4339 -284
  158. data/generated/google/apis/dialogflow_v2/representations.rb +2090 -211
  159. data/generated/google/apis/dialogflow_v2.rb +1 -1
  160. data/generated/google/apis/dialogflow_v2beta1/classes.rb +4341 -286
  161. data/generated/google/apis/dialogflow_v2beta1/representations.rb +2097 -218
  162. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  163. data/generated/google/apis/dialogflow_v3/classes.rb +11752 -0
  164. data/generated/google/apis/dialogflow_v3/representations.rb +5158 -0
  165. data/generated/google/apis/dialogflow_v3/service.rb +3414 -0
  166. data/generated/google/apis/{bigqueryreservation_v1alpha2.rb → dialogflow_v3.rb} +13 -12
  167. data/generated/google/apis/dialogflow_v3beta1/classes.rb +5147 -1554
  168. data/generated/google/apis/dialogflow_v3beta1/representations.rb +1966 -221
  169. data/generated/google/apis/dialogflow_v3beta1/service.rb +581 -0
  170. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  171. data/generated/google/apis/dlp_v2/service.rb +297 -10
  172. data/generated/google/apis/dlp_v2.rb +1 -1
  173. data/generated/google/apis/dns_v1/classes.rb +65 -0
  174. data/generated/google/apis/dns_v1/representations.rb +32 -0
  175. data/generated/google/apis/dns_v1.rb +1 -1
  176. data/generated/google/apis/documentai_v1beta2/classes.rb +217 -186
  177. data/generated/google/apis/documentai_v1beta2/representations.rb +107 -24
  178. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  179. data/generated/google/apis/documentai_v1beta3/classes.rb +238 -201
  180. data/generated/google/apis/documentai_v1beta3/representations.rb +107 -24
  181. data/generated/google/apis/documentai_v1beta3/service.rb +81 -2
  182. data/generated/google/apis/documentai_v1beta3.rb +1 -1
  183. data/generated/google/apis/eventarc_v1beta1/classes.rb +8 -9
  184. data/generated/google/apis/eventarc_v1beta1/service.rb +25 -5
  185. data/generated/google/apis/eventarc_v1beta1.rb +1 -1
  186. data/generated/google/apis/file_v1/classes.rb +61 -0
  187. data/generated/google/apis/file_v1/representations.rb +19 -0
  188. data/generated/google/apis/file_v1.rb +1 -1
  189. data/generated/google/apis/gameservices_v1/service.rb +14 -14
  190. data/generated/google/apis/gameservices_v1.rb +1 -1
  191. data/generated/google/apis/gameservices_v1beta/service.rb +14 -14
  192. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  193. data/generated/google/apis/genomics_v2alpha1/classes.rb +11 -7
  194. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  195. data/generated/google/apis/healthcare_v1/classes.rb +0 -6
  196. data/generated/google/apis/healthcare_v1/representations.rb +0 -1
  197. data/generated/google/apis/healthcare_v1/service.rb +13 -12
  198. data/generated/google/apis/healthcare_v1.rb +1 -1
  199. data/generated/google/apis/healthcare_v1beta1/classes.rb +45 -19
  200. data/generated/google/apis/healthcare_v1beta1/representations.rb +3 -1
  201. data/generated/google/apis/healthcare_v1beta1/service.rb +37 -37
  202. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  203. data/generated/google/apis/iap_v1/classes.rb +0 -6
  204. data/generated/google/apis/iap_v1/representations.rb +0 -1
  205. data/generated/google/apis/iap_v1.rb +1 -1
  206. data/generated/google/apis/iap_v1beta1/classes.rb +0 -6
  207. data/generated/google/apis/iap_v1beta1/representations.rb +0 -1
  208. data/generated/google/apis/iap_v1beta1.rb +1 -1
  209. data/generated/google/apis/localservices_v1.rb +4 -1
  210. data/generated/google/apis/manufacturers_v1/classes.rb +2 -2
  211. data/generated/google/apis/manufacturers_v1.rb +1 -1
  212. data/generated/google/apis/metastore_v1beta/classes.rb +1151 -0
  213. data/generated/google/apis/metastore_v1beta/representations.rb +479 -0
  214. data/generated/google/apis/metastore_v1beta/service.rb +800 -0
  215. data/{lib/google/apis/core/logging.rb → generated/google/apis/metastore_v1beta.rb} +15 -10
  216. data/generated/google/apis/ml_v1/classes.rb +51 -18
  217. data/generated/google/apis/ml_v1/representations.rb +16 -0
  218. data/generated/google/apis/ml_v1.rb +1 -1
  219. data/generated/google/apis/monitoring_v3/classes.rb +10 -6
  220. data/generated/google/apis/monitoring_v3.rb +1 -1
  221. data/generated/google/apis/notebooks_v1/classes.rb +13 -0
  222. data/generated/google/apis/notebooks_v1/representations.rb +12 -0
  223. data/generated/google/apis/notebooks_v1/service.rb +34 -0
  224. data/generated/google/apis/notebooks_v1.rb +1 -1
  225. data/generated/google/apis/privateca_v1beta1/classes.rb +2 -1
  226. data/generated/google/apis/privateca_v1beta1.rb +1 -1
  227. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  228. data/generated/google/apis/recommendationengine_v1beta1/service.rb +2 -1
  229. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  230. data/generated/google/apis/recommender_v1beta1/service.rb +317 -0
  231. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  232. data/generated/google/apis/redis_v1/classes.rb +2 -2
  233. data/generated/google/apis/redis_v1.rb +1 -1
  234. data/generated/google/apis/redis_v1beta1/classes.rb +2 -2
  235. data/generated/google/apis/redis_v1beta1.rb +1 -1
  236. data/generated/google/apis/safebrowsing_v4/classes.rb +277 -277
  237. data/generated/google/apis/safebrowsing_v4/representations.rb +128 -128
  238. data/generated/google/apis/safebrowsing_v4/service.rb +44 -44
  239. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  240. data/generated/google/apis/searchconsole_v1/classes.rb +7 -0
  241. data/generated/google/apis/searchconsole_v1/representations.rb +1 -0
  242. data/generated/google/apis/searchconsole_v1.rb +1 -1
  243. data/generated/google/apis/securitycenter_v1/classes.rb +18 -10
  244. data/generated/google/apis/securitycenter_v1/representations.rb +1 -0
  245. data/generated/google/apis/securitycenter_v1/service.rb +30 -30
  246. data/generated/google/apis/securitycenter_v1.rb +1 -1
  247. data/generated/google/apis/securitycenter_v1beta1/classes.rb +7 -0
  248. data/generated/google/apis/securitycenter_v1beta1/representations.rb +1 -0
  249. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  250. data/generated/google/apis/securitycenter_v1beta2/classes.rb +7 -0
  251. data/generated/google/apis/securitycenter_v1beta2/representations.rb +1 -0
  252. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  253. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +11 -10
  254. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  255. data/generated/google/apis/servicecontrol_v1/service.rb +2 -2
  256. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  257. data/generated/google/apis/servicecontrol_v2/service.rb +2 -2
  258. data/generated/google/apis/servicecontrol_v2.rb +3 -3
  259. data/generated/google/apis/servicedirectory_v1/classes.rb +721 -0
  260. data/generated/google/apis/servicedirectory_v1/representations.rb +304 -0
  261. data/generated/google/apis/servicedirectory_v1/service.rb +957 -0
  262. data/{lib/google/apis/generator/templates/representations.rb.tmpl → generated/google/apis/servicedirectory_v1.rb} +15 -12
  263. data/generated/google/apis/servicemanagement_v1/classes.rb +11 -10
  264. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  265. data/generated/google/apis/servicenetworking_v1/classes.rb +1 -1
  266. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  267. data/generated/google/apis/servicenetworking_v1beta/classes.rb +1 -1
  268. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  269. data/generated/google/apis/serviceusage_v1/classes.rb +11 -10
  270. data/generated/google/apis/serviceusage_v1.rb +1 -1
  271. data/generated/google/apis/serviceusage_v1beta1/classes.rb +11 -10
  272. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  273. data/generated/google/apis/slides_v1/classes.rb +9 -3
  274. data/generated/google/apis/slides_v1.rb +1 -1
  275. data/generated/google/apis/speech_v1p1beta1/classes.rb +0 -22
  276. data/generated/google/apis/speech_v1p1beta1/representations.rb +0 -2
  277. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  278. data/generated/google/apis/sqladmin_v1beta4/classes.rb +7 -7
  279. data/generated/google/apis/sqladmin_v1beta4/service.rb +4 -1
  280. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  281. data/generated/google/apis/storagetransfer_v1/classes.rb +25 -0
  282. data/generated/google/apis/storagetransfer_v1/representations.rb +3 -0
  283. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  284. data/generated/google/apis/testing_v1/classes.rb +1 -1
  285. data/generated/google/apis/testing_v1.rb +1 -1
  286. data/generated/google/apis/trafficdirector_v2/service.rb +1 -1
  287. data/generated/google/apis/trafficdirector_v2.rb +2 -2
  288. data/generated/google/apis/transcoder_v1beta1/classes.rb +12 -2
  289. data/generated/google/apis/transcoder_v1beta1/representations.rb +1 -0
  290. data/generated/google/apis/transcoder_v1beta1.rb +1 -1
  291. data/generated/google/apis/translate_v3/classes.rb +1 -1
  292. data/generated/google/apis/translate_v3.rb +1 -1
  293. data/generated/google/apis/translate_v3beta1/classes.rb +1 -1
  294. data/generated/google/apis/translate_v3beta1.rb +1 -1
  295. data/generated/google/apis/webmasters_v3/classes.rb +8 -0
  296. data/generated/google/apis/webmasters_v3/representations.rb +1 -0
  297. data/generated/google/apis/workflows_v1beta/classes.rb +4 -4
  298. data/generated/google/apis/workflows_v1beta.rb +1 -1
  299. data/generated/google/apis/youtube_v3/classes.rb +18 -143
  300. data/generated/google/apis/youtube_v3/representations.rb +0 -57
  301. data/generated/google/apis/youtube_v3/service.rb +0 -43
  302. data/generated/google/apis/youtube_v3.rb +1 -1
  303. data/lib/google/apis/version.rb +1 -23
  304. metadata +39 -267
  305. data/.github/CONTRIBUTING.md +0 -31
  306. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -36
  307. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -21
  308. data/.github/ISSUE_TEMPLATE/support_request.md +0 -7
  309. data/.github/workflows/autoapprove.yml +0 -49
  310. data/.github/workflows/release-please.yml +0 -79
  311. data/.gitignore +0 -23
  312. data/.kokoro/build.bat +0 -11
  313. data/.kokoro/build.sh +0 -4
  314. data/.kokoro/continuous/common.cfg +0 -25
  315. data/.kokoro/continuous/linux.cfg +0 -25
  316. data/.kokoro/continuous/osx.cfg +0 -8
  317. data/.kokoro/continuous/post.cfg +0 -30
  318. data/.kokoro/continuous/windows.cfg +0 -29
  319. data/.kokoro/osx.sh +0 -4
  320. data/.kokoro/presubmit/common.cfg +0 -24
  321. data/.kokoro/presubmit/linux.cfg +0 -24
  322. data/.kokoro/presubmit/osx.cfg +0 -8
  323. data/.kokoro/presubmit/windows.cfg +0 -29
  324. data/.kokoro/release.cfg +0 -94
  325. data/.kokoro/trampoline.bat +0 -10
  326. data/.kokoro/trampoline.sh +0 -4
  327. data/.repo-metadata.json +0 -5
  328. data/.rspec +0 -2
  329. data/.rubocop.yml +0 -12
  330. data/.rubocop_todo.yml +0 -63
  331. data/CODE_OF_CONDUCT.md +0 -43
  332. data/Gemfile +0 -55
  333. data/MIGRATING.md +0 -215
  334. data/README.md +0 -402
  335. data/Rakefile +0 -131
  336. data/api_list_config.yaml +0 -9
  337. data/api_names.yaml +0 -1082
  338. data/bin/generate-api +0 -194
  339. data/docs/api-keys.md +0 -20
  340. data/docs/auth.md +0 -53
  341. data/docs/client-secrets.md +0 -69
  342. data/docs/getting-started.md +0 -340
  343. data/docs/installation.md +0 -0
  344. data/docs/logging.md +0 -34
  345. data/docs/media-upload.md +0 -25
  346. data/docs/oauth-installed.md +0 -191
  347. data/docs/oauth-server.md +0 -133
  348. data/docs/oauth-web.md +0 -280
  349. data/docs/oauth.md +0 -268
  350. data/docs/pagination.md +0 -29
  351. data/docs/performance.md +0 -25
  352. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +0 -426
  353. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +0 -195
  354. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +0 -622
  355. data/google-api-client.gemspec +0 -36
  356. data/lib/google/api_client/auth/installed_app.rb +0 -143
  357. data/lib/google/api_client/auth/key_utils.rb +0 -94
  358. data/lib/google/api_client/auth/storage.rb +0 -104
  359. data/lib/google/api_client/auth/storages/file_store.rb +0 -57
  360. data/lib/google/api_client/auth/storages/redis_store.rb +0 -59
  361. data/lib/google/api_client/client_secrets.rb +0 -176
  362. data/lib/google/apis/core/api_command.rb +0 -209
  363. data/lib/google/apis/core/base_service.rb +0 -447
  364. data/lib/google/apis/core/batch.rb +0 -236
  365. data/lib/google/apis/core/composite_io.rb +0 -97
  366. data/lib/google/apis/core/download.rb +0 -118
  367. data/lib/google/apis/core/hashable.rb +0 -44
  368. data/lib/google/apis/core/http_command.rb +0 -447
  369. data/lib/google/apis/core/json_representation.rb +0 -153
  370. data/lib/google/apis/core/multipart.rb +0 -135
  371. data/lib/google/apis/core/upload.rb +0 -273
  372. data/lib/google/apis/errors.rb +0 -89
  373. data/lib/google/apis/generator/annotator.rb +0 -339
  374. data/lib/google/apis/generator/helpers.rb +0 -76
  375. data/lib/google/apis/generator/model.rb +0 -187
  376. data/lib/google/apis/generator/template.rb +0 -124
  377. data/lib/google/apis/generator/templates/_class.tmpl +0 -43
  378. data/lib/google/apis/generator/templates/_method.tmpl +0 -92
  379. data/lib/google/apis/generator/templates/_representation.tmpl +0 -51
  380. data/lib/google/apis/generator/templates/_representation_stub.tmpl +0 -17
  381. data/lib/google/apis/generator/templates/_representation_type.tmpl +0 -10
  382. data/lib/google/apis/generator/templates/module.rb.tmpl +0 -40
  383. data/lib/google/apis/generator/templates/service.rb.tmpl +0 -61
  384. data/lib/google/apis/generator.rb +0 -71
  385. data/lib/google/apis/options.rb +0 -116
  386. data/lib/google/apis.rb +0 -58
  387. data/rakelib/devsite/devsite_builder.rb +0 -126
  388. data/rakelib/devsite/link_checker.rb +0 -64
  389. data/rakelib/devsite/repo_metadata.rb +0 -56
  390. data/rakelib/metrics.rake +0 -22
  391. data/rakelib/rubocop.rake +0 -10
  392. data/rakelib/spec.rake +0 -11
  393. data/rakelib/yard.rake +0 -11
  394. data/samples/cli/.env +0 -4
  395. data/samples/cli/Gemfile +0 -7
  396. data/samples/cli/README.md +0 -51
  397. data/samples/cli/google-api-samples +0 -32
  398. data/samples/cli/lib/base_cli.rb +0 -95
  399. data/samples/cli/lib/samples/adsense.rb +0 -99
  400. data/samples/cli/lib/samples/analytics.rb +0 -80
  401. data/samples/cli/lib/samples/androidpublisher.rb +0 -47
  402. data/samples/cli/lib/samples/bigquery.rb +0 -101
  403. data/samples/cli/lib/samples/calendar.rb +0 -83
  404. data/samples/cli/lib/samples/drive.rb +0 -82
  405. data/samples/cli/lib/samples/gmail.rb +0 -157
  406. data/samples/cli/lib/samples/pubsub.rb +0 -114
  407. data/samples/cli/lib/samples/sheets.rb +0 -61
  408. data/samples/cli/lib/samples/translate.rb +0 -44
  409. data/samples/cli/lib/samples/vision.rb +0 -69
  410. data/samples/cli/lib/samples/you_tube.rb +0 -47
  411. data/samples/web/Gemfile +0 -9
  412. data/samples/web/README.md +0 -44
  413. data/samples/web/app.rb +0 -120
  414. data/samples/web/views/calendar.erb +0 -34
  415. data/samples/web/views/drive.erb +0 -33
  416. data/samples/web/views/home.erb +0 -34
  417. data/samples/web/views/layout.erb +0 -40
  418. data/synth.py +0 -40
@@ -22,15 +22,25 @@ module Google
22
22
  module Apis
23
23
  module DialogflowV2
24
24
 
25
- # Metadata associated with the long running operation for Versions.CreateVersion.
26
- class GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
25
+ # Represents the natural speech audio to be processed.
26
+ class GoogleCloudDialogflowCxV3AudioInput
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
- # Name of the created version. Format: `projects//locations//agents//flows//
30
- # versions/`.
31
- # Corresponds to the JSON property `version`
29
+ # The natural language speech audio to be processed. A single request can
30
+ # contain up to 1 minute of speech audio data. The transcribed text cannot
31
+ # contain more than 256 bytes. For non-streaming audio detect intent, both `
32
+ # config` and `audio` must be provided. For streaming audio detect intent, `
33
+ # config` must be provided in the first request and `audio` must be provided in
34
+ # all following requests.
35
+ # Corresponds to the JSON property `audio`
36
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
32
37
  # @return [String]
33
- attr_accessor :version
38
+ attr_accessor :audio
39
+
40
+ # Instructs the speech recognizer on how to process the audio content.
41
+ # Corresponds to the JSON property `config`
42
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3InputAudioConfig]
43
+ attr_accessor :config
34
44
 
35
45
  def initialize(**args)
36
46
  update!(**args)
@@ -38,25 +48,39 @@ module Google
38
48
 
39
49
  # Update properties of this object
40
50
  def update!(**args)
41
- @version = args[:version] if args.key?(:version)
51
+ @audio = args[:audio] if args.key?(:audio)
52
+ @config = args[:config] if args.key?(:config)
42
53
  end
43
54
  end
44
55
 
45
- # The response message for Agents.ExportAgent.
46
- class GoogleCloudDialogflowCxV3beta1ExportAgentResponse
56
+ # Metadata returned for the TestCases.BatchRunTestCases long running operation.
57
+ class GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
47
58
  include Google::Apis::Core::Hashable
48
59
 
49
- # Uncompressed raw byte content for agent.
50
- # Corresponds to the JSON property `agentContent`
51
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
52
- # @return [String]
53
- attr_accessor :agent_content
60
+ # The test errors.
61
+ # Corresponds to the JSON property `errors`
62
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestError>]
63
+ attr_accessor :errors
54
64
 
55
- # The URI to a file containing the exported agent. This field is populated only
56
- # if `agent_uri` is specified in ExportAgentRequest.
57
- # Corresponds to the JSON property `agentUri`
58
- # @return [String]
59
- attr_accessor :agent_uri
65
+ def initialize(**args)
66
+ update!(**args)
67
+ end
68
+
69
+ # Update properties of this object
70
+ def update!(**args)
71
+ @errors = args[:errors] if args.key?(:errors)
72
+ end
73
+ end
74
+
75
+ # The response message for TestCases.BatchRunTestCases.
76
+ class GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
77
+ include Google::Apis::Core::Hashable
78
+
79
+ # The test case results. The detailed conversation turns are empty in this
80
+ # response.
81
+ # Corresponds to the JSON property `results`
82
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestCaseResult>]
83
+ attr_accessor :results
60
84
 
61
85
  def initialize(**args)
62
86
  update!(**args)
@@ -64,26 +88,24 @@ module Google
64
88
 
65
89
  # Update properties of this object
66
90
  def update!(**args)
67
- @agent_content = args[:agent_content] if args.key?(:agent_content)
68
- @agent_uri = args[:agent_uri] if args.key?(:agent_uri)
91
+ @results = args[:results] if args.key?(:results)
69
92
  end
70
93
  end
71
94
 
72
- # Represents page information communicated to and from the webhook.
73
- class GoogleCloudDialogflowCxV3beta1PageInfo
95
+ # One interaction between a human and virtual agent. The human provides some
96
+ # input and the virtual agent provides a response.
97
+ class GoogleCloudDialogflowCxV3ConversationTurn
74
98
  include Google::Apis::Core::Hashable
75
99
 
76
- # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
77
- # identifier of the current page. Format: `projects//locations//agents//flows//
78
- # pages/`.
79
- # Corresponds to the JSON property `currentPage`
80
- # @return [String]
81
- attr_accessor :current_page
100
+ # The input from the human user.
101
+ # Corresponds to the JSON property `userInput`
102
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ConversationTurnUserInput]
103
+ attr_accessor :user_input
82
104
 
83
- # Represents form information.
84
- # Corresponds to the JSON property `formInfo`
85
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1PageInfoFormInfo]
86
- attr_accessor :form_info
105
+ # The output from the virtual agent.
106
+ # Corresponds to the JSON property `virtualAgentOutput`
107
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput]
108
+ attr_accessor :virtual_agent_output
87
109
 
88
110
  def initialize(**args)
89
111
  update!(**args)
@@ -91,20 +113,35 @@ module Google
91
113
 
92
114
  # Update properties of this object
93
115
  def update!(**args)
94
- @current_page = args[:current_page] if args.key?(:current_page)
95
- @form_info = args[:form_info] if args.key?(:form_info)
116
+ @user_input = args[:user_input] if args.key?(:user_input)
117
+ @virtual_agent_output = args[:virtual_agent_output] if args.key?(:virtual_agent_output)
96
118
  end
97
119
  end
98
120
 
99
- # Represents form information.
100
- class GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
121
+ # The input from the human user.
122
+ class GoogleCloudDialogflowCxV3ConversationTurnUserInput
101
123
  include Google::Apis::Core::Hashable
102
124
 
103
- # Optional for both WebhookRequest and WebhookResponse. The parameters contained
104
- # in the form. Note that the webhook cannot add or remove any form parameter.
105
- # Corresponds to the JSON property `parameterInfo`
106
- # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo>]
107
- attr_accessor :parameter_info
125
+ # Parameters that need to be injected into the conversation during intent
126
+ # detection.
127
+ # Corresponds to the JSON property `injectedParameters`
128
+ # @return [Hash<String,Object>]
129
+ attr_accessor :injected_parameters
130
+
131
+ # Represents the query input. It can contain one of: 1. A conversational query
132
+ # in the form of text. 2. An intent query that specifies which intent to trigger.
133
+ # 3. Natural language speech audio to be processed. 4. An event to be triggered.
134
+ #
135
+ # Corresponds to the JSON property `input`
136
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3QueryInput]
137
+ attr_accessor :input
138
+
139
+ # If webhooks should be allowed to trigger in response to the user utterance.
140
+ # Often if parameters are injected, webhooks should not be enabled.
141
+ # Corresponds to the JSON property `isWebhookEnabled`
142
+ # @return [Boolean]
143
+ attr_accessor :is_webhook_enabled
144
+ alias_method :is_webhook_enabled?, :is_webhook_enabled
108
145
 
109
146
  def initialize(**args)
110
147
  update!(**args)
@@ -112,49 +149,70 @@ module Google
112
149
 
113
150
  # Update properties of this object
114
151
  def update!(**args)
115
- @parameter_info = args[:parameter_info] if args.key?(:parameter_info)
152
+ @injected_parameters = args[:injected_parameters] if args.key?(:injected_parameters)
153
+ @input = args[:input] if args.key?(:input)
154
+ @is_webhook_enabled = args[:is_webhook_enabled] if args.key?(:is_webhook_enabled)
116
155
  end
117
156
  end
118
157
 
119
- # Represents parameter information.
120
- class GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
158
+ # The output from the virtual agent.
159
+ class GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
121
160
  include Google::Apis::Core::Hashable
122
161
 
123
- # Always present for WebhookRequest. Required for WebhookResponse. The human-
124
- # readable name of the parameter, unique within the form. This field cannot be
125
- # modified by the webhook.
126
- # Corresponds to the JSON property `displayName`
127
- # @return [String]
128
- attr_accessor :display_name
162
+ # A Dialogflow CX conversation (session) can be described and visualized as a
163
+ # state machine. The states of a CX session are represented by pages. For each
164
+ # flow, you define many pages, where your combined pages can handle a complete
165
+ # conversation on the topics the flow is designed for. At any given moment,
166
+ # exactly one page is the current page, the current page is considered active,
167
+ # and the flow associated with that page is considered active. Every flow has a
168
+ # special start page. When a flow initially becomes active, the start page page
169
+ # becomes the current page. For each conversational turn, the current page will
170
+ # either stay the same or transition to another page. You configure each page to
171
+ # collect information from the end-user that is relevant for the conversational
172
+ # state represented by the page. For more information, see the [Page guide](
173
+ # https://cloud.google.com/dialogflow/cx/docs/concept/page).
174
+ # Corresponds to the JSON property `currentPage`
175
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3Page]
176
+ attr_accessor :current_page
129
177
 
130
- # Optional for WebhookRequest. Ignored for WebhookResponse. Indicates if the
131
- # parameter value was just collected on the last conversation turn.
132
- # Corresponds to the JSON property `justCollected`
133
- # @return [Boolean]
134
- attr_accessor :just_collected
135
- alias_method :just_collected?, :just_collected
178
+ # Required. Input only. The diagnostic info output for the turn.
179
+ # Corresponds to the JSON property `diagnosticInfo`
180
+ # @return [Hash<String,Object>]
181
+ attr_accessor :diagnostic_info
136
182
 
137
- # Optional for both WebhookRequest and WebhookResponse. Indicates whether the
138
- # parameter is required. Optional parameters will not trigger prompts; however,
139
- # they are filled if the user specifies them. Required parameters must be filled
140
- # before form filling concludes.
141
- # Corresponds to the JSON property `required`
142
- # @return [Boolean]
143
- attr_accessor :required
144
- alias_method :required?, :required
183
+ # Output only. If this is part of a result conversation turn, the list of
184
+ # differences between the original run and the replay for this output, if any.
185
+ # Corresponds to the JSON property `differences`
186
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestRunDifference>]
187
+ attr_accessor :differences
145
188
 
146
- # Always present for WebhookRequest. Required for WebhookResponse. The state of
147
- # the parameter. This field can be set to INVALID by the webhook to invalidate
148
- # the parameter; other values set by the webhook will be ignored.
149
- # Corresponds to the JSON property `state`
150
- # @return [String]
151
- attr_accessor :state
189
+ # The session parameters available to the bot at this point.
190
+ # Corresponds to the JSON property `sessionParameters`
191
+ # @return [Hash<String,Object>]
192
+ attr_accessor :session_parameters
152
193
 
153
- # Optional for both WebhookRequest and WebhookResponse. The value of the
154
- # parameter. This field can be set by the webhook to change the parameter value.
155
- # Corresponds to the JSON property `value`
156
- # @return [Object]
157
- attr_accessor :value
194
+ # The `Status` type defines a logical error model that is suitable for different
195
+ # programming environments, including REST APIs and RPC APIs. It is used by [
196
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
197
+ # data: error code, error message, and error details. You can find out more
198
+ # about this error model and how to work with it in the [API Design Guide](https:
199
+ # //cloud.google.com/apis/design/errors).
200
+ # Corresponds to the JSON property `status`
201
+ # @return [Google::Apis::DialogflowV2::GoogleRpcStatus]
202
+ attr_accessor :status
203
+
204
+ # The text responses from the agent for the turn.
205
+ # Corresponds to the JSON property `textResponses`
206
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageText>]
207
+ attr_accessor :text_responses
208
+
209
+ # An intent represents a user's intent to interact with a conversational agent.
210
+ # You can provide information for the Dialogflow API to use to match user input
211
+ # to an intent by adding training phrases (i.e., examples of user input) to your
212
+ # intent.
213
+ # Corresponds to the JSON property `triggeredIntent`
214
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3Intent]
215
+ attr_accessor :triggered_intent
158
216
 
159
217
  def initialize(**args)
160
218
  update!(**args)
@@ -162,87 +220,44 @@ module Google
162
220
 
163
221
  # Update properties of this object
164
222
  def update!(**args)
165
- @display_name = args[:display_name] if args.key?(:display_name)
166
- @just_collected = args[:just_collected] if args.key?(:just_collected)
167
- @required = args[:required] if args.key?(:required)
168
- @state = args[:state] if args.key?(:state)
169
- @value = args[:value] if args.key?(:value)
223
+ @current_page = args[:current_page] if args.key?(:current_page)
224
+ @diagnostic_info = args[:diagnostic_info] if args.key?(:diagnostic_info)
225
+ @differences = args[:differences] if args.key?(:differences)
226
+ @session_parameters = args[:session_parameters] if args.key?(:session_parameters)
227
+ @status = args[:status] if args.key?(:status)
228
+ @text_responses = args[:text_responses] if args.key?(:text_responses)
229
+ @triggered_intent = args[:triggered_intent] if args.key?(:triggered_intent)
170
230
  end
171
231
  end
172
232
 
173
- # Represents a response message that can be returned by a conversational agent.
174
- # Response messages are also used for output audio synthesis. The approach is as
175
- # follows: * If at least one OutputAudioText response is present, then all
176
- # OutputAudioText responses are linearly concatenated, and the result is used
177
- # for output audio synthesis. * If the OutputAudioText responses are a mixture
178
- # of text and SSML, then the concatenated result is treated as SSML; otherwise,
179
- # the result is treated as either text or SSML as appropriate. The agent
180
- # designer should ideally use either text or SSML consistently throughout the
181
- # bot design. * Otherwise, all Text responses are linearly concatenated, and the
182
- # result is used for output audio synthesis. This approach allows for more
183
- # sophisticated user experience scenarios, where the text displayed to the user
184
- # may differ from what is heard.
185
- class GoogleCloudDialogflowCxV3beta1ResponseMessage
233
+ # Metadata for CreateDocument operation.
234
+ class GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata
186
235
  include Google::Apis::Core::Hashable
187
236
 
188
- # Indicates that the conversation succeeded, i.e., the bot handled the issue
189
- # that the customer talked to it about. Dialogflow only uses this to determine
190
- # which conversations should be counted as successful and doesn't process the
191
- # metadata in this message in any way. Note that Dialogflow also considers
192
- # conversations that get to the conversation end page as successful even if they
193
- # don't return ConversationSuccess. You may set this, for example: * In the
194
- # entry_fulfillment of a Page if entering the page indicates that the
195
- # conversation succeeded. * In a webhook response when you determine that you
196
- # handled the customer issue.
197
- # Corresponds to the JSON property `conversationSuccess`
198
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess]
199
- attr_accessor :conversation_success
200
-
201
- # Indicates that interaction with the Dialogflow agent has ended. This message
202
- # is generated by Dialogflow only and not supposed to be defined by the user.
203
- # Corresponds to the JSON property `endInteraction`
204
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction]
205
- attr_accessor :end_interaction
206
-
207
- # Indicates that the conversation should be handed off to a live agent.
208
- # Dialogflow only uses this to determine which conversations were handed off to
209
- # a human agent for measurement purposes. What else to do with this signal is up
210
- # to you and your handoff procedures. You may set this, for example: * In the
211
- # entry_fulfillment of a Page if entering the page indicates something went
212
- # extremely wrong in the conversation. * In a webhook response when you
213
- # determine that the customer issue can only be handled by a human.
214
- # Corresponds to the JSON property `liveAgentHandoff`
215
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff]
216
- attr_accessor :live_agent_handoff
217
-
218
- # Represents an audio message that is composed of both segments synthesized from
219
- # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
220
- # The external URIs are specified via play_audio. This message is generated by
221
- # Dialogflow only and not supposed to be defined by the user.
222
- # Corresponds to the JSON property `mixedAudio`
223
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio]
224
- attr_accessor :mixed_audio
237
+ # Metadata in google::longrunning::Operation for Knowledge operations.
238
+ # Corresponds to the JSON property `genericMetadata`
239
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata]
240
+ attr_accessor :generic_metadata
225
241
 
226
- # A text or ssml response that is preferentially used for TTS output audio
227
- # synthesis, as described in the comment on the ResponseMessage message.
228
- # Corresponds to the JSON property `outputAudioText`
229
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText]
230
- attr_accessor :output_audio_text
242
+ def initialize(**args)
243
+ update!(**args)
244
+ end
231
245
 
232
- # Returns a response containing a custom, platform-specific payload.
233
- # Corresponds to the JSON property `payload`
234
- # @return [Hash<String,Object>]
235
- attr_accessor :payload
246
+ # Update properties of this object
247
+ def update!(**args)
248
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
249
+ end
250
+ end
236
251
 
237
- # Specifies an audio clip to be played by the client as part of the response.
238
- # Corresponds to the JSON property `playAudio`
239
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio]
240
- attr_accessor :play_audio
252
+ # Metadata associated with the long running operation for Versions.CreateVersion.
253
+ class GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
254
+ include Google::Apis::Core::Hashable
241
255
 
242
- # The text response message.
243
- # Corresponds to the JSON property `text`
244
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageText]
245
- attr_accessor :text
256
+ # Name of the created version. Format: `projects//locations//agents//flows//
257
+ # versions/`.
258
+ # Corresponds to the JSON property `version`
259
+ # @return [String]
260
+ attr_accessor :version
246
261
 
247
262
  def initialize(**args)
248
263
  update!(**args)
@@ -250,33 +265,18 @@ module Google
250
265
 
251
266
  # Update properties of this object
252
267
  def update!(**args)
253
- @conversation_success = args[:conversation_success] if args.key?(:conversation_success)
254
- @end_interaction = args[:end_interaction] if args.key?(:end_interaction)
255
- @live_agent_handoff = args[:live_agent_handoff] if args.key?(:live_agent_handoff)
256
- @mixed_audio = args[:mixed_audio] if args.key?(:mixed_audio)
257
- @output_audio_text = args[:output_audio_text] if args.key?(:output_audio_text)
258
- @payload = args[:payload] if args.key?(:payload)
259
- @play_audio = args[:play_audio] if args.key?(:play_audio)
260
- @text = args[:text] if args.key?(:text)
268
+ @version = args[:version] if args.key?(:version)
261
269
  end
262
270
  end
263
271
 
264
- # Indicates that the conversation succeeded, i.e., the bot handled the issue
265
- # that the customer talked to it about. Dialogflow only uses this to determine
266
- # which conversations should be counted as successful and doesn't process the
267
- # metadata in this message in any way. Note that Dialogflow also considers
268
- # conversations that get to the conversation end page as successful even if they
269
- # don't return ConversationSuccess. You may set this, for example: * In the
270
- # entry_fulfillment of a Page if entering the page indicates that the
271
- # conversation succeeded. * In a webhook response when you determine that you
272
- # handled the customer issue.
273
- class GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
272
+ # Metadata for DeleteDocument operation.
273
+ class GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata
274
274
  include Google::Apis::Core::Hashable
275
275
 
276
- # Custom metadata. Dialogflow doesn't impose any structure on this.
277
- # Corresponds to the JSON property `metadata`
278
- # @return [Hash<String,Object>]
279
- attr_accessor :metadata
276
+ # Metadata in google::longrunning::Operation for Knowledge operations.
277
+ # Corresponds to the JSON property `genericMetadata`
278
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata]
279
+ attr_accessor :generic_metadata
280
280
 
281
281
  def initialize(**args)
282
282
  update!(**args)
@@ -284,39 +284,3896 @@ module Google
284
284
 
285
285
  # Update properties of this object
286
286
  def update!(**args)
287
- @metadata = args[:metadata] if args.key?(:metadata)
287
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
288
288
  end
289
289
  end
290
290
 
291
- # Indicates that interaction with the Dialogflow agent has ended. This message
292
- # is generated by Dialogflow only and not supposed to be defined by the user.
293
- class GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
291
+ # Represents the input for dtmf event.
292
+ class GoogleCloudDialogflowCxV3DtmfInput
294
293
  include Google::Apis::Core::Hashable
295
294
 
295
+ # The dtmf digits.
296
+ # Corresponds to the JSON property `digits`
297
+ # @return [String]
298
+ attr_accessor :digits
299
+
300
+ # The finish digit (if any).
301
+ # Corresponds to the JSON property `finishDigit`
302
+ # @return [String]
303
+ attr_accessor :finish_digit
304
+
296
305
  def initialize(**args)
297
306
  update!(**args)
298
307
  end
299
308
 
300
309
  # Update properties of this object
301
310
  def update!(**args)
311
+ @digits = args[:digits] if args.key?(:digits)
312
+ @finish_digit = args[:finish_digit] if args.key?(:finish_digit)
302
313
  end
303
314
  end
304
315
 
305
- # Indicates that the conversation should be handed off to a live agent.
306
- # Dialogflow only uses this to determine which conversations were handed off to
307
- # a human agent for measurement purposes. What else to do with this signal is up
308
- # to you and your handoff procedures. You may set this, for example: * In the
309
- # entry_fulfillment of a Page if entering the page indicates something went
310
- # extremely wrong in the conversation. * In a webhook response when you
311
- # determine that the customer issue can only be handled by a human.
312
- class GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
316
+ # An event handler specifies an event that can be handled during a session. When
317
+ # the specified event happens, the following actions are taken in order: * If
318
+ # there is a `trigger_fulfillment` associated with the event, it will be called.
319
+ # * If there is a `target_page` associated with the event, the session will
320
+ # transition into the specified page. * If there is a `target_flow` associated
321
+ # with the event, the session will transition into the specified flow.
322
+ class GoogleCloudDialogflowCxV3EventHandler
313
323
  include Google::Apis::Core::Hashable
314
324
 
315
- # Custom metadata for your handoff procedure. Dialogflow doesn't impose any
316
- # structure on this.
317
- # Corresponds to the JSON property `metadata`
318
- # @return [Hash<String,Object>]
319
- attr_accessor :metadata
325
+ # Required. The name of the event to handle.
326
+ # Corresponds to the JSON property `event`
327
+ # @return [String]
328
+ attr_accessor :event
329
+
330
+ # Output only. The unique identifier of this event handler.
331
+ # Corresponds to the JSON property `name`
332
+ # @return [String]
333
+ attr_accessor :name
334
+
335
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
336
+ # .
337
+ # Corresponds to the JSON property `targetFlow`
338
+ # @return [String]
339
+ attr_accessor :target_flow
340
+
341
+ # The target page to transition to. Format: `projects//locations//agents//flows//
342
+ # pages/`.
343
+ # Corresponds to the JSON property `targetPage`
344
+ # @return [String]
345
+ attr_accessor :target_page
346
+
347
+ # A fulfillment can do one or more of the following actions at the same time: *
348
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
349
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
350
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
351
+ # the page's entry fulfillment can add a static response to the QueryResult in
352
+ # the returning DetectIntentResponse, call the webhook (for example, to load
353
+ # user data from a database), or both.
354
+ # Corresponds to the JSON property `triggerFulfillment`
355
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3Fulfillment]
356
+ attr_accessor :trigger_fulfillment
357
+
358
+ def initialize(**args)
359
+ update!(**args)
360
+ end
361
+
362
+ # Update properties of this object
363
+ def update!(**args)
364
+ @event = args[:event] if args.key?(:event)
365
+ @name = args[:name] if args.key?(:name)
366
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
367
+ @target_page = args[:target_page] if args.key?(:target_page)
368
+ @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
369
+ end
370
+ end
371
+
372
+ # Represents the event to trigger.
373
+ class GoogleCloudDialogflowCxV3EventInput
374
+ include Google::Apis::Core::Hashable
375
+
376
+ # Name of the event.
377
+ # Corresponds to the JSON property `event`
378
+ # @return [String]
379
+ attr_accessor :event
380
+
381
+ def initialize(**args)
382
+ update!(**args)
383
+ end
384
+
385
+ # Update properties of this object
386
+ def update!(**args)
387
+ @event = args[:event] if args.key?(:event)
388
+ end
389
+ end
390
+
391
+ # The response message for Agents.ExportAgent.
392
+ class GoogleCloudDialogflowCxV3ExportAgentResponse
393
+ include Google::Apis::Core::Hashable
394
+
395
+ # Uncompressed raw byte content for agent.
396
+ # Corresponds to the JSON property `agentContent`
397
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
398
+ # @return [String]
399
+ attr_accessor :agent_content
400
+
401
+ # The URI to a file containing the exported agent. This field is populated only
402
+ # if `agent_uri` is specified in ExportAgentRequest.
403
+ # Corresponds to the JSON property `agentUri`
404
+ # @return [String]
405
+ attr_accessor :agent_uri
406
+
407
+ def initialize(**args)
408
+ update!(**args)
409
+ end
410
+
411
+ # Update properties of this object
412
+ def update!(**args)
413
+ @agent_content = args[:agent_content] if args.key?(:agent_content)
414
+ @agent_uri = args[:agent_uri] if args.key?(:agent_uri)
415
+ end
416
+ end
417
+
418
+ # Metadata returned for the TestCases.ExportTestCases long running operation.
419
+ class GoogleCloudDialogflowCxV3ExportTestCasesMetadata
420
+ include Google::Apis::Core::Hashable
421
+
422
+ def initialize(**args)
423
+ update!(**args)
424
+ end
425
+
426
+ # Update properties of this object
427
+ def update!(**args)
428
+ end
429
+ end
430
+
431
+ # The response message for TestCases.ExportTestCases.
432
+ class GoogleCloudDialogflowCxV3ExportTestCasesResponse
433
+ include Google::Apis::Core::Hashable
434
+
435
+ # Uncompressed raw byte content for test cases.
436
+ # Corresponds to the JSON property `content`
437
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
438
+ # @return [String]
439
+ attr_accessor :content
440
+
441
+ # The URI to a file containing the exported test cases. This field is populated
442
+ # only if `gcs_uri` is specified in ExportTestCasesRequest.
443
+ # Corresponds to the JSON property `gcsUri`
444
+ # @return [String]
445
+ attr_accessor :gcs_uri
446
+
447
+ def initialize(**args)
448
+ update!(**args)
449
+ end
450
+
451
+ # Update properties of this object
452
+ def update!(**args)
453
+ @content = args[:content] if args.key?(:content)
454
+ @gcs_uri = args[:gcs_uri] if args.key?(:gcs_uri)
455
+ end
456
+ end
457
+
458
+ # A form is a data model that groups related parameters that can be collected
459
+ # from the user. The process in which the agent prompts the user and collects
460
+ # parameter values from the user is called form filling. A form can be added to
461
+ # a page. When form filling is done, the filled parameters will be written to
462
+ # the session.
463
+ class GoogleCloudDialogflowCxV3Form
464
+ include Google::Apis::Core::Hashable
465
+
466
+ # Parameters to collect from the user.
467
+ # Corresponds to the JSON property `parameters`
468
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3FormParameter>]
469
+ attr_accessor :parameters
470
+
471
+ def initialize(**args)
472
+ update!(**args)
473
+ end
474
+
475
+ # Update properties of this object
476
+ def update!(**args)
477
+ @parameters = args[:parameters] if args.key?(:parameters)
478
+ end
479
+ end
480
+
481
+ # Represents a form parameter.
482
+ class GoogleCloudDialogflowCxV3FormParameter
483
+ include Google::Apis::Core::Hashable
484
+
485
+ # The default value of an optional parameter. If the parameter is required, the
486
+ # default value will be ignored.
487
+ # Corresponds to the JSON property `defaultValue`
488
+ # @return [Object]
489
+ attr_accessor :default_value
490
+
491
+ # Required. The human-readable name of the parameter, unique within the form.
492
+ # Corresponds to the JSON property `displayName`
493
+ # @return [String]
494
+ attr_accessor :display_name
495
+
496
+ # Required. The entity type of the parameter. Format: `projects/-/locations/-/
497
+ # agents/-/entityTypes/` for system entity types (for example, `projects/-/
498
+ # locations/-/agents/-/entityTypes/sys.date`), or `projects//locations//agents//
499
+ # entityTypes/` for developer entity types.
500
+ # Corresponds to the JSON property `entityType`
501
+ # @return [String]
502
+ attr_accessor :entity_type
503
+
504
+ # Configuration for how the filling of a parameter should be handled.
505
+ # Corresponds to the JSON property `fillBehavior`
506
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3FormParameterFillBehavior]
507
+ attr_accessor :fill_behavior
508
+
509
+ # Indicates whether the parameter represents a list of values.
510
+ # Corresponds to the JSON property `isList`
511
+ # @return [Boolean]
512
+ attr_accessor :is_list
513
+ alias_method :is_list?, :is_list
514
+
515
+ # Indicates whether the parameter content is logged in text and audio. If it is
516
+ # set to true, the parameter content will be replaced to parameter name in both
517
+ # request and response. The default value is false.
518
+ # Corresponds to the JSON property `redact`
519
+ # @return [Boolean]
520
+ attr_accessor :redact
521
+ alias_method :redact?, :redact
522
+
523
+ # Indicates whether the parameter is required. Optional parameters will not
524
+ # trigger prompts; however, they are filled if the user specifies them. Required
525
+ # parameters must be filled before form filling concludes.
526
+ # Corresponds to the JSON property `required`
527
+ # @return [Boolean]
528
+ attr_accessor :required
529
+ alias_method :required?, :required
530
+
531
+ def initialize(**args)
532
+ update!(**args)
533
+ end
534
+
535
+ # Update properties of this object
536
+ def update!(**args)
537
+ @default_value = args[:default_value] if args.key?(:default_value)
538
+ @display_name = args[:display_name] if args.key?(:display_name)
539
+ @entity_type = args[:entity_type] if args.key?(:entity_type)
540
+ @fill_behavior = args[:fill_behavior] if args.key?(:fill_behavior)
541
+ @is_list = args[:is_list] if args.key?(:is_list)
542
+ @redact = args[:redact] if args.key?(:redact)
543
+ @required = args[:required] if args.key?(:required)
544
+ end
545
+ end
546
+
547
+ # Configuration for how the filling of a parameter should be handled.
548
+ class GoogleCloudDialogflowCxV3FormParameterFillBehavior
549
+ include Google::Apis::Core::Hashable
550
+
551
+ # A fulfillment can do one or more of the following actions at the same time: *
552
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
553
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
554
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
555
+ # the page's entry fulfillment can add a static response to the QueryResult in
556
+ # the returning DetectIntentResponse, call the webhook (for example, to load
557
+ # user data from a database), or both.
558
+ # Corresponds to the JSON property `initialPromptFulfillment`
559
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3Fulfillment]
560
+ attr_accessor :initial_prompt_fulfillment
561
+
562
+ # The handlers for parameter-level events, used to provide reprompt for the
563
+ # parameter or transition to a different page/flow. The supported events are: * `
564
+ # sys.no-match-`, where N can be from 1 to 6 * `sys.no-match-default` * `sys.no-
565
+ # input-`, where N can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-
566
+ # parameter` `initial_prompt_fulfillment` provides the first prompt for the
567
+ # parameter. If the user's response does not fill the parameter, a no-match/no-
568
+ # input event will be triggered, and the fulfillment associated with the `sys.no-
569
+ # match-1`/`sys.no-input-1` handler (if defined) will be called to provide a
570
+ # prompt. The `sys.no-match-2`/`sys.no-input-2` handler (if defined) will
571
+ # respond to the next no-match/no-input event, and so on. A `sys.no-match-
572
+ # default` or `sys.no-input-default` handler will be used to handle all
573
+ # following no-match/no-input events after all numbered no-match/no-input
574
+ # handlers for the parameter are consumed. A `sys.invalid-parameter` handler can
575
+ # be defined to handle the case where the parameter values have been `
576
+ # invalidated` by webhook. For example, if the user's response fill the
577
+ # parameter, however the parameter was invalidated by webhook, the fulfillment
578
+ # associated with the `sys.invalid-parameter` handler (if defined) will be
579
+ # called to provide a prompt. If the event handler for the corresponding event
580
+ # can't be found on the parameter, `initial_prompt_fulfillment` will be re-
581
+ # prompted.
582
+ # Corresponds to the JSON property `repromptEventHandlers`
583
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3EventHandler>]
584
+ attr_accessor :reprompt_event_handlers
585
+
586
+ def initialize(**args)
587
+ update!(**args)
588
+ end
589
+
590
+ # Update properties of this object
591
+ def update!(**args)
592
+ @initial_prompt_fulfillment = args[:initial_prompt_fulfillment] if args.key?(:initial_prompt_fulfillment)
593
+ @reprompt_event_handlers = args[:reprompt_event_handlers] if args.key?(:reprompt_event_handlers)
594
+ end
595
+ end
596
+
597
+ # A fulfillment can do one or more of the following actions at the same time: *
598
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
599
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
600
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
601
+ # the page's entry fulfillment can add a static response to the QueryResult in
602
+ # the returning DetectIntentResponse, call the webhook (for example, to load
603
+ # user data from a database), or both.
604
+ class GoogleCloudDialogflowCxV3Fulfillment
605
+ include Google::Apis::Core::Hashable
606
+
607
+ # Conditional cases for this fulfillment.
608
+ # Corresponds to the JSON property `conditionalCases`
609
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3FulfillmentConditionalCases>]
610
+ attr_accessor :conditional_cases
611
+
612
+ # The list of rich message responses to present to the user.
613
+ # Corresponds to the JSON property `messages`
614
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessage>]
615
+ attr_accessor :messages
616
+
617
+ # Set parameter values before executing the webhook.
618
+ # Corresponds to the JSON property `setParameterActions`
619
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3FulfillmentSetParameterAction>]
620
+ attr_accessor :set_parameter_actions
621
+
622
+ # The tag used by the webhook to identify which fulfillment is being called.
623
+ # This field is required if `webhook` is specified.
624
+ # Corresponds to the JSON property `tag`
625
+ # @return [String]
626
+ attr_accessor :tag
627
+
628
+ # The webhook to call. Format: `projects//locations//agents//webhooks/`.
629
+ # Corresponds to the JSON property `webhook`
630
+ # @return [String]
631
+ attr_accessor :webhook
632
+
633
+ def initialize(**args)
634
+ update!(**args)
635
+ end
636
+
637
+ # Update properties of this object
638
+ def update!(**args)
639
+ @conditional_cases = args[:conditional_cases] if args.key?(:conditional_cases)
640
+ @messages = args[:messages] if args.key?(:messages)
641
+ @set_parameter_actions = args[:set_parameter_actions] if args.key?(:set_parameter_actions)
642
+ @tag = args[:tag] if args.key?(:tag)
643
+ @webhook = args[:webhook] if args.key?(:webhook)
644
+ end
645
+ end
646
+
647
+ # A list of cascading if-else conditions. Cases are mutually exclusive. The
648
+ # first one with a matching condition is selected, all the rest ignored.
649
+ class GoogleCloudDialogflowCxV3FulfillmentConditionalCases
650
+ include Google::Apis::Core::Hashable
651
+
652
+ # A list of cascading if-else conditions.
653
+ # Corresponds to the JSON property `cases`
654
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase>]
655
+ attr_accessor :cases
656
+
657
+ def initialize(**args)
658
+ update!(**args)
659
+ end
660
+
661
+ # Update properties of this object
662
+ def update!(**args)
663
+ @cases = args[:cases] if args.key?(:cases)
664
+ end
665
+ end
666
+
667
+ # Each case has a Boolean condition. When it is evaluated to be True, the
668
+ # corresponding messages will be selected and evaluated recursively.
669
+ class GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
670
+ include Google::Apis::Core::Hashable
671
+
672
+ # A list of case content.
673
+ # Corresponds to the JSON property `caseContent`
674
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent>]
675
+ attr_accessor :case_content
676
+
677
+ # The condition to activate and select this case. Empty means the condition is
678
+ # always true. The condition is evaluated against form parameters or session
679
+ # parameters. See the [conditions reference](https://cloud.google.com/dialogflow/
680
+ # cx/docs/reference/condition).
681
+ # Corresponds to the JSON property `condition`
682
+ # @return [String]
683
+ attr_accessor :condition
684
+
685
+ def initialize(**args)
686
+ update!(**args)
687
+ end
688
+
689
+ # Update properties of this object
690
+ def update!(**args)
691
+ @case_content = args[:case_content] if args.key?(:case_content)
692
+ @condition = args[:condition] if args.key?(:condition)
693
+ end
694
+ end
695
+
696
+ # The list of messages or conditional cases to activate for this case.
697
+ class GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
698
+ include Google::Apis::Core::Hashable
699
+
700
+ # A list of cascading if-else conditions. Cases are mutually exclusive. The
701
+ # first one with a matching condition is selected, all the rest ignored.
702
+ # Corresponds to the JSON property `additionalCases`
703
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3FulfillmentConditionalCases]
704
+ attr_accessor :additional_cases
705
+
706
+ # Represents a response message that can be returned by a conversational agent.
707
+ # Response messages are also used for output audio synthesis. The approach is as
708
+ # follows: * If at least one OutputAudioText response is present, then all
709
+ # OutputAudioText responses are linearly concatenated, and the result is used
710
+ # for output audio synthesis. * If the OutputAudioText responses are a mixture
711
+ # of text and SSML, then the concatenated result is treated as SSML; otherwise,
712
+ # the result is treated as either text or SSML as appropriate. The agent
713
+ # designer should ideally use either text or SSML consistently throughout the
714
+ # bot design. * Otherwise, all Text responses are linearly concatenated, and the
715
+ # result is used for output audio synthesis. This approach allows for more
716
+ # sophisticated user experience scenarios, where the text displayed to the user
717
+ # may differ from what is heard.
718
+ # Corresponds to the JSON property `message`
719
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessage]
720
+ attr_accessor :message
721
+
722
+ def initialize(**args)
723
+ update!(**args)
724
+ end
725
+
726
+ # Update properties of this object
727
+ def update!(**args)
728
+ @additional_cases = args[:additional_cases] if args.key?(:additional_cases)
729
+ @message = args[:message] if args.key?(:message)
730
+ end
731
+ end
732
+
733
+ # Setting a parameter value.
734
+ class GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
735
+ include Google::Apis::Core::Hashable
736
+
737
+ # Display name of the parameter.
738
+ # Corresponds to the JSON property `parameter`
739
+ # @return [String]
740
+ attr_accessor :parameter
741
+
742
+ # The new value of the parameter. A null value clears the parameter.
743
+ # Corresponds to the JSON property `value`
744
+ # @return [Object]
745
+ attr_accessor :value
746
+
747
+ def initialize(**args)
748
+ update!(**args)
749
+ end
750
+
751
+ # Update properties of this object
752
+ def update!(**args)
753
+ @parameter = args[:parameter] if args.key?(:parameter)
754
+ @value = args[:value] if args.key?(:value)
755
+ end
756
+ end
757
+
758
+ # Metadata in google::longrunning::Operation for Knowledge operations.
759
+ class GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata
760
+ include Google::Apis::Core::Hashable
761
+
762
+ # Required. Output only. The current state of this operation.
763
+ # Corresponds to the JSON property `state`
764
+ # @return [String]
765
+ attr_accessor :state
766
+
767
+ def initialize(**args)
768
+ update!(**args)
769
+ end
770
+
771
+ # Update properties of this object
772
+ def update!(**args)
773
+ @state = args[:state] if args.key?(:state)
774
+ end
775
+ end
776
+
777
+ # Metadata for ImportDocuments operation.
778
+ class GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata
779
+ include Google::Apis::Core::Hashable
780
+
781
+ # Metadata in google::longrunning::Operation for Knowledge operations.
782
+ # Corresponds to the JSON property `genericMetadata`
783
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata]
784
+ attr_accessor :generic_metadata
785
+
786
+ def initialize(**args)
787
+ update!(**args)
788
+ end
789
+
790
+ # Update properties of this object
791
+ def update!(**args)
792
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
793
+ end
794
+ end
795
+
796
+ # Response message for Documents.ImportDocuments.
797
+ class GoogleCloudDialogflowCxV3ImportDocumentsResponse
798
+ include Google::Apis::Core::Hashable
799
+
800
+ # Includes details about skipped documents or any other warnings.
801
+ # Corresponds to the JSON property `warnings`
802
+ # @return [Array<Google::Apis::DialogflowV2::GoogleRpcStatus>]
803
+ attr_accessor :warnings
804
+
805
+ def initialize(**args)
806
+ update!(**args)
807
+ end
808
+
809
+ # Update properties of this object
810
+ def update!(**args)
811
+ @warnings = args[:warnings] if args.key?(:warnings)
812
+ end
813
+ end
814
+
815
+ # Metadata returned for the TestCases.ImportTestCases long running operation.
816
+ class GoogleCloudDialogflowCxV3ImportTestCasesMetadata
817
+ include Google::Apis::Core::Hashable
818
+
819
+ # Errors for failed test cases.
820
+ # Corresponds to the JSON property `errors`
821
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestCaseError>]
822
+ attr_accessor :errors
823
+
824
+ def initialize(**args)
825
+ update!(**args)
826
+ end
827
+
828
+ # Update properties of this object
829
+ def update!(**args)
830
+ @errors = args[:errors] if args.key?(:errors)
831
+ end
832
+ end
833
+
834
+ # The response message for TestCases.ImportTestCases.
835
+ class GoogleCloudDialogflowCxV3ImportTestCasesResponse
836
+ include Google::Apis::Core::Hashable
837
+
838
+ # The unique identifiers of the new test cases. Format: `projects//locations//
839
+ # agents//testCases/`.
840
+ # Corresponds to the JSON property `names`
841
+ # @return [Array<String>]
842
+ attr_accessor :names
843
+
844
+ def initialize(**args)
845
+ update!(**args)
846
+ end
847
+
848
+ # Update properties of this object
849
+ def update!(**args)
850
+ @names = args[:names] if args.key?(:names)
851
+ end
852
+ end
853
+
854
+ # Instructs the speech recognizer on how to process the audio content.
855
+ class GoogleCloudDialogflowCxV3InputAudioConfig
856
+ include Google::Apis::Core::Hashable
857
+
858
+ # Required. Audio encoding of the audio content to process.
859
+ # Corresponds to the JSON property `audioEncoding`
860
+ # @return [String]
861
+ attr_accessor :audio_encoding
862
+
863
+ # Optional. If `true`, Dialogflow returns SpeechWordInfo in
864
+ # StreamingRecognitionResult with information about the recognized speech words,
865
+ # e.g. start and end time offsets. If false or unspecified, Speech doesn't
866
+ # return any word-level information.
867
+ # Corresponds to the JSON property `enableWordInfo`
868
+ # @return [Boolean]
869
+ attr_accessor :enable_word_info
870
+ alias_method :enable_word_info?, :enable_word_info
871
+
872
+ # Optional. Which Speech model to select for the given request. Select the model
873
+ # best suited to your domain to get best results. If a model is not explicitly
874
+ # specified, then we auto-select a model based on the parameters in the
875
+ # InputAudioConfig. If enhanced speech model is enabled for the agent and an
876
+ # enhanced version of the specified model for the language does not exist, then
877
+ # the speech is recognized using the standard version of the specified model.
878
+ # Refer to [Cloud Speech API documentation](https://cloud.google.com/speech-to-
879
+ # text/docs/basics#select-model) for more details.
880
+ # Corresponds to the JSON property `model`
881
+ # @return [String]
882
+ attr_accessor :model
883
+
884
+ # Optional. Which variant of the Speech model to use.
885
+ # Corresponds to the JSON property `modelVariant`
886
+ # @return [String]
887
+ attr_accessor :model_variant
888
+
889
+ # Optional. A list of strings containing words and phrases that the speech
890
+ # recognizer should recognize with higher likelihood. See [the Cloud Speech
891
+ # documentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-
892
+ # hints) for more details.
893
+ # Corresponds to the JSON property `phraseHints`
894
+ # @return [Array<String>]
895
+ attr_accessor :phrase_hints
896
+
897
+ # Sample rate (in Hertz) of the audio content sent in the query. Refer to [Cloud
898
+ # Speech API documentation](https://cloud.google.com/speech-to-text/docs/basics)
899
+ # for more details.
900
+ # Corresponds to the JSON property `sampleRateHertz`
901
+ # @return [Fixnum]
902
+ attr_accessor :sample_rate_hertz
903
+
904
+ # Optional. If `false` (default), recognition does not cease until the client
905
+ # closes the stream. If `true`, the recognizer will detect a single spoken
906
+ # utterance in input audio. Recognition ceases when it detects the audio's voice
907
+ # has stopped or paused. In this case, once a detected intent is received, the
908
+ # client should close the stream and start a new request with a new stream as
909
+ # needed. Note: This setting is relevant only for streaming methods.
910
+ # Corresponds to the JSON property `singleUtterance`
911
+ # @return [Boolean]
912
+ attr_accessor :single_utterance
913
+ alias_method :single_utterance?, :single_utterance
914
+
915
+ def initialize(**args)
916
+ update!(**args)
917
+ end
918
+
919
+ # Update properties of this object
920
+ def update!(**args)
921
+ @audio_encoding = args[:audio_encoding] if args.key?(:audio_encoding)
922
+ @enable_word_info = args[:enable_word_info] if args.key?(:enable_word_info)
923
+ @model = args[:model] if args.key?(:model)
924
+ @model_variant = args[:model_variant] if args.key?(:model_variant)
925
+ @phrase_hints = args[:phrase_hints] if args.key?(:phrase_hints)
926
+ @sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz)
927
+ @single_utterance = args[:single_utterance] if args.key?(:single_utterance)
928
+ end
929
+ end
930
+
931
+ # An intent represents a user's intent to interact with a conversational agent.
932
+ # You can provide information for the Dialogflow API to use to match user input
933
+ # to an intent by adding training phrases (i.e., examples of user input) to your
934
+ # intent.
935
+ class GoogleCloudDialogflowCxV3Intent
936
+ include Google::Apis::Core::Hashable
937
+
938
+ # Optional. Human readable description for better understanding an intent like
939
+ # its scope, content, result etc. Maximum character limit: 140 characters.
940
+ # Corresponds to the JSON property `description`
941
+ # @return [String]
942
+ attr_accessor :description
943
+
944
+ # Required. The human-readable name of the intent, unique within the agent.
945
+ # Corresponds to the JSON property `displayName`
946
+ # @return [String]
947
+ attr_accessor :display_name
948
+
949
+ # Indicates whether this is a fallback intent. Currently only default fallback
950
+ # intent is allowed in the agent, which is added upon agent creation. Adding
951
+ # training phrases to fallback intent is useful in the case of requests that are
952
+ # mistakenly matched, since training phrases assigned to fallback intents act as
953
+ # negative examples that triggers no-match event.
954
+ # Corresponds to the JSON property `isFallback`
955
+ # @return [Boolean]
956
+ attr_accessor :is_fallback
957
+ alias_method :is_fallback?, :is_fallback
958
+
959
+ # Optional. The key/value metadata to label an intent. Labels can contain
960
+ # lowercase letters, digits and the symbols '-' and '_'. International
961
+ # characters are allowed, including letters from unicase alphabets. Keys must
962
+ # start with a letter. Keys and values can be no longer than 63 characters and
963
+ # no more than 128 bytes. Prefix "sys." is reserved for Dialogflow defined
964
+ # labels. Currently allowed Dialogflow defined labels include: * sys.head * sys.
965
+ # contextual The above labels do not require value. "sys.head" means the intent
966
+ # is a head intent. "sys.contextual" means the intent is a contextual intent.
967
+ # Corresponds to the JSON property `labels`
968
+ # @return [Hash<String,String>]
969
+ attr_accessor :labels
970
+
971
+ # The unique identifier of the intent. Required for the Intents.UpdateIntent
972
+ # method. Intents.CreateIntent populates the name automatically. Format: `
973
+ # projects//locations//agents//intents/`.
974
+ # Corresponds to the JSON property `name`
975
+ # @return [String]
976
+ attr_accessor :name
977
+
978
+ # The collection of parameters associated with the intent.
979
+ # Corresponds to the JSON property `parameters`
980
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3IntentParameter>]
981
+ attr_accessor :parameters
982
+
983
+ # The priority of this intent. Higher numbers represent higher priorities. - If
984
+ # the supplied value is unspecified or 0, the service translates the value to
985
+ # 500,000, which corresponds to the `Normal` priority in the console. - If the
986
+ # supplied value is negative, the intent is ignored in runtime detect intent
987
+ # requests.
988
+ # Corresponds to the JSON property `priority`
989
+ # @return [Fixnum]
990
+ attr_accessor :priority
991
+
992
+ # The collection of training phrases the agent is trained on to identify the
993
+ # intent.
994
+ # Corresponds to the JSON property `trainingPhrases`
995
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3IntentTrainingPhrase>]
996
+ attr_accessor :training_phrases
997
+
998
+ def initialize(**args)
999
+ update!(**args)
1000
+ end
1001
+
1002
+ # Update properties of this object
1003
+ def update!(**args)
1004
+ @description = args[:description] if args.key?(:description)
1005
+ @display_name = args[:display_name] if args.key?(:display_name)
1006
+ @is_fallback = args[:is_fallback] if args.key?(:is_fallback)
1007
+ @labels = args[:labels] if args.key?(:labels)
1008
+ @name = args[:name] if args.key?(:name)
1009
+ @parameters = args[:parameters] if args.key?(:parameters)
1010
+ @priority = args[:priority] if args.key?(:priority)
1011
+ @training_phrases = args[:training_phrases] if args.key?(:training_phrases)
1012
+ end
1013
+ end
1014
+
1015
+ # Represents the intent to trigger programmatically rather than as a result of
1016
+ # natural language processing.
1017
+ class GoogleCloudDialogflowCxV3IntentInput
1018
+ include Google::Apis::Core::Hashable
1019
+
1020
+ # Required. The unique identifier of the intent. Format: `projects//locations//
1021
+ # agents//intents/`.
1022
+ # Corresponds to the JSON property `intent`
1023
+ # @return [String]
1024
+ attr_accessor :intent
1025
+
1026
+ def initialize(**args)
1027
+ update!(**args)
1028
+ end
1029
+
1030
+ # Update properties of this object
1031
+ def update!(**args)
1032
+ @intent = args[:intent] if args.key?(:intent)
1033
+ end
1034
+ end
1035
+
1036
+ # Represents an intent parameter.
1037
+ class GoogleCloudDialogflowCxV3IntentParameter
1038
+ include Google::Apis::Core::Hashable
1039
+
1040
+ # Required. The entity type of the parameter. Format: `projects/-/locations/-/
1041
+ # agents/-/entityTypes/` for system entity types (for example, `projects/-/
1042
+ # locations/-/agents/-/entityTypes/sys.date`), or `projects//locations//agents//
1043
+ # entityTypes/` for developer entity types.
1044
+ # Corresponds to the JSON property `entityType`
1045
+ # @return [String]
1046
+ attr_accessor :entity_type
1047
+
1048
+ # Required. The unique identifier of the parameter. This field is used by
1049
+ # training phrases to annotate their parts.
1050
+ # Corresponds to the JSON property `id`
1051
+ # @return [String]
1052
+ attr_accessor :id
1053
+
1054
+ # Indicates whether the parameter represents a list of values.
1055
+ # Corresponds to the JSON property `isList`
1056
+ # @return [Boolean]
1057
+ attr_accessor :is_list
1058
+ alias_method :is_list?, :is_list
1059
+
1060
+ # Indicates whether the parameter content is logged in text and audio. If it is
1061
+ # set to true, the parameter content will be replaced to parameter id in both
1062
+ # request and response. The default value is false.
1063
+ # Corresponds to the JSON property `redact`
1064
+ # @return [Boolean]
1065
+ attr_accessor :redact
1066
+ alias_method :redact?, :redact
1067
+
1068
+ def initialize(**args)
1069
+ update!(**args)
1070
+ end
1071
+
1072
+ # Update properties of this object
1073
+ def update!(**args)
1074
+ @entity_type = args[:entity_type] if args.key?(:entity_type)
1075
+ @id = args[:id] if args.key?(:id)
1076
+ @is_list = args[:is_list] if args.key?(:is_list)
1077
+ @redact = args[:redact] if args.key?(:redact)
1078
+ end
1079
+ end
1080
+
1081
+ # Represents an example that the agent is trained on to identify the intent.
1082
+ class GoogleCloudDialogflowCxV3IntentTrainingPhrase
1083
+ include Google::Apis::Core::Hashable
1084
+
1085
+ # Output only. The unique identifier of the training phrase.
1086
+ # Corresponds to the JSON property `id`
1087
+ # @return [String]
1088
+ attr_accessor :id
1089
+
1090
+ # Required. The ordered list of training phrase parts. The parts are
1091
+ # concatenated in order to form the training phrase. Note: The API does not
1092
+ # automatically annotate training phrases like the Dialogflow Console does. Note:
1093
+ # Do not forget to include whitespace at part boundaries, so the training
1094
+ # phrase is well formatted when the parts are concatenated. If the training
1095
+ # phrase does not need to be annotated with parameters, you just need a single
1096
+ # part with only the Part.text field set. If you want to annotate the training
1097
+ # phrase, you must create multiple parts, where the fields of each part are
1098
+ # populated in one of two ways: - `Part.text` is set to a part of the phrase
1099
+ # that has no parameters. - `Part.text` is set to a part of the phrase that you
1100
+ # want to annotate, and the `parameter_id` field is set.
1101
+ # Corresponds to the JSON property `parts`
1102
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3IntentTrainingPhrasePart>]
1103
+ attr_accessor :parts
1104
+
1105
+ # Indicates how many times this example was added to the intent.
1106
+ # Corresponds to the JSON property `repeatCount`
1107
+ # @return [Fixnum]
1108
+ attr_accessor :repeat_count
1109
+
1110
+ def initialize(**args)
1111
+ update!(**args)
1112
+ end
1113
+
1114
+ # Update properties of this object
1115
+ def update!(**args)
1116
+ @id = args[:id] if args.key?(:id)
1117
+ @parts = args[:parts] if args.key?(:parts)
1118
+ @repeat_count = args[:repeat_count] if args.key?(:repeat_count)
1119
+ end
1120
+ end
1121
+
1122
+ # Represents a part of a training phrase.
1123
+ class GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
1124
+ include Google::Apis::Core::Hashable
1125
+
1126
+ # The parameter used to annotate this part of the training phrase. This field is
1127
+ # required for annotated parts of the training phrase.
1128
+ # Corresponds to the JSON property `parameterId`
1129
+ # @return [String]
1130
+ attr_accessor :parameter_id
1131
+
1132
+ # Required. The text for this part.
1133
+ # Corresponds to the JSON property `text`
1134
+ # @return [String]
1135
+ attr_accessor :text
1136
+
1137
+ def initialize(**args)
1138
+ update!(**args)
1139
+ end
1140
+
1141
+ # Update properties of this object
1142
+ def update!(**args)
1143
+ @parameter_id = args[:parameter_id] if args.key?(:parameter_id)
1144
+ @text = args[:text] if args.key?(:text)
1145
+ end
1146
+ end
1147
+
1148
+ # A Dialogflow CX conversation (session) can be described and visualized as a
1149
+ # state machine. The states of a CX session are represented by pages. For each
1150
+ # flow, you define many pages, where your combined pages can handle a complete
1151
+ # conversation on the topics the flow is designed for. At any given moment,
1152
+ # exactly one page is the current page, the current page is considered active,
1153
+ # and the flow associated with that page is considered active. Every flow has a
1154
+ # special start page. When a flow initially becomes active, the start page page
1155
+ # becomes the current page. For each conversational turn, the current page will
1156
+ # either stay the same or transition to another page. You configure each page to
1157
+ # collect information from the end-user that is relevant for the conversational
1158
+ # state represented by the page. For more information, see the [Page guide](
1159
+ # https://cloud.google.com/dialogflow/cx/docs/concept/page).
1160
+ class GoogleCloudDialogflowCxV3Page
1161
+ include Google::Apis::Core::Hashable
1162
+
1163
+ # Required. The human-readable name of the page, unique within the agent.
1164
+ # Corresponds to the JSON property `displayName`
1165
+ # @return [String]
1166
+ attr_accessor :display_name
1167
+
1168
+ # A fulfillment can do one or more of the following actions at the same time: *
1169
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
1170
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
1171
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
1172
+ # the page's entry fulfillment can add a static response to the QueryResult in
1173
+ # the returning DetectIntentResponse, call the webhook (for example, to load
1174
+ # user data from a database), or both.
1175
+ # Corresponds to the JSON property `entryFulfillment`
1176
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3Fulfillment]
1177
+ attr_accessor :entry_fulfillment
1178
+
1179
+ # Handlers associated with the page to handle events such as webhook errors, no
1180
+ # match or no input.
1181
+ # Corresponds to the JSON property `eventHandlers`
1182
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3EventHandler>]
1183
+ attr_accessor :event_handlers
1184
+
1185
+ # A form is a data model that groups related parameters that can be collected
1186
+ # from the user. The process in which the agent prompts the user and collects
1187
+ # parameter values from the user is called form filling. A form can be added to
1188
+ # a page. When form filling is done, the filled parameters will be written to
1189
+ # the session.
1190
+ # Corresponds to the JSON property `form`
1191
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3Form]
1192
+ attr_accessor :form
1193
+
1194
+ # The unique identifier of the page. Required for the Pages.UpdatePage method.
1195
+ # Pages.CreatePage populates the name automatically. Format: `projects//
1196
+ # locations//agents//flows//pages/`.
1197
+ # Corresponds to the JSON property `name`
1198
+ # @return [String]
1199
+ attr_accessor :name
1200
+
1201
+ # Ordered list of `TransitionRouteGroups` associated with the page. Transition
1202
+ # route groups must be unique within a page. * If multiple transition routes
1203
+ # within a page scope refer to the same intent, then the precedence order is:
1204
+ # page's transition route -> page's transition route group -> flow's transition
1205
+ # routes. * If multiple transition route groups within a page contain the same
1206
+ # intent, then the first group in the ordered list takes precedence. Format:`
1207
+ # projects//locations//agents//flows//transitionRouteGroups/`.
1208
+ # Corresponds to the JSON property `transitionRouteGroups`
1209
+ # @return [Array<String>]
1210
+ attr_accessor :transition_route_groups
1211
+
1212
+ # A list of transitions for the transition rules of this page. They route the
1213
+ # conversation to another page in the same flow, or another flow. When we are in
1214
+ # a certain page, the TransitionRoutes are evalauted in the following order: *
1215
+ # TransitionRoutes defined in the page with intent specified. * TransitionRoutes
1216
+ # defined in the transition route groups. * TransitionRoutes defined in flow
1217
+ # with intent specified. * TransitionRoutes defined in the page with only
1218
+ # condition specified.
1219
+ # Corresponds to the JSON property `transitionRoutes`
1220
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TransitionRoute>]
1221
+ attr_accessor :transition_routes
1222
+
1223
+ def initialize(**args)
1224
+ update!(**args)
1225
+ end
1226
+
1227
+ # Update properties of this object
1228
+ def update!(**args)
1229
+ @display_name = args[:display_name] if args.key?(:display_name)
1230
+ @entry_fulfillment = args[:entry_fulfillment] if args.key?(:entry_fulfillment)
1231
+ @event_handlers = args[:event_handlers] if args.key?(:event_handlers)
1232
+ @form = args[:form] if args.key?(:form)
1233
+ @name = args[:name] if args.key?(:name)
1234
+ @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups)
1235
+ @transition_routes = args[:transition_routes] if args.key?(:transition_routes)
1236
+ end
1237
+ end
1238
+
1239
+ # Represents page information communicated to and from the webhook.
1240
+ class GoogleCloudDialogflowCxV3PageInfo
1241
+ include Google::Apis::Core::Hashable
1242
+
1243
+ # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
1244
+ # identifier of the current page. Format: `projects//locations//agents//flows//
1245
+ # pages/`.
1246
+ # Corresponds to the JSON property `currentPage`
1247
+ # @return [String]
1248
+ attr_accessor :current_page
1249
+
1250
+ # Represents form information.
1251
+ # Corresponds to the JSON property `formInfo`
1252
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfoFormInfo]
1253
+ attr_accessor :form_info
1254
+
1255
+ def initialize(**args)
1256
+ update!(**args)
1257
+ end
1258
+
1259
+ # Update properties of this object
1260
+ def update!(**args)
1261
+ @current_page = args[:current_page] if args.key?(:current_page)
1262
+ @form_info = args[:form_info] if args.key?(:form_info)
1263
+ end
1264
+ end
1265
+
1266
+ # Represents form information.
1267
+ class GoogleCloudDialogflowCxV3PageInfoFormInfo
1268
+ include Google::Apis::Core::Hashable
1269
+
1270
+ # Optional for both WebhookRequest and WebhookResponse. The parameters contained
1271
+ # in the form. Note that the webhook cannot add or remove any form parameter.
1272
+ # Corresponds to the JSON property `parameterInfo`
1273
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo>]
1274
+ attr_accessor :parameter_info
1275
+
1276
+ def initialize(**args)
1277
+ update!(**args)
1278
+ end
1279
+
1280
+ # Update properties of this object
1281
+ def update!(**args)
1282
+ @parameter_info = args[:parameter_info] if args.key?(:parameter_info)
1283
+ end
1284
+ end
1285
+
1286
+ # Represents parameter information.
1287
+ class GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
1288
+ include Google::Apis::Core::Hashable
1289
+
1290
+ # Always present for WebhookRequest. Required for WebhookResponse. The human-
1291
+ # readable name of the parameter, unique within the form. This field cannot be
1292
+ # modified by the webhook.
1293
+ # Corresponds to the JSON property `displayName`
1294
+ # @return [String]
1295
+ attr_accessor :display_name
1296
+
1297
+ # Optional for WebhookRequest. Ignored for WebhookResponse. Indicates if the
1298
+ # parameter value was just collected on the last conversation turn.
1299
+ # Corresponds to the JSON property `justCollected`
1300
+ # @return [Boolean]
1301
+ attr_accessor :just_collected
1302
+ alias_method :just_collected?, :just_collected
1303
+
1304
+ # Optional for both WebhookRequest and WebhookResponse. Indicates whether the
1305
+ # parameter is required. Optional parameters will not trigger prompts; however,
1306
+ # they are filled if the user specifies them. Required parameters must be filled
1307
+ # before form filling concludes.
1308
+ # Corresponds to the JSON property `required`
1309
+ # @return [Boolean]
1310
+ attr_accessor :required
1311
+ alias_method :required?, :required
1312
+
1313
+ # Always present for WebhookRequest. Required for WebhookResponse. The state of
1314
+ # the parameter. This field can be set to INVALID by the webhook to invalidate
1315
+ # the parameter; other values set by the webhook will be ignored.
1316
+ # Corresponds to the JSON property `state`
1317
+ # @return [String]
1318
+ attr_accessor :state
1319
+
1320
+ # Optional for both WebhookRequest and WebhookResponse. The value of the
1321
+ # parameter. This field can be set by the webhook to change the parameter value.
1322
+ # Corresponds to the JSON property `value`
1323
+ # @return [Object]
1324
+ attr_accessor :value
1325
+
1326
+ def initialize(**args)
1327
+ update!(**args)
1328
+ end
1329
+
1330
+ # Update properties of this object
1331
+ def update!(**args)
1332
+ @display_name = args[:display_name] if args.key?(:display_name)
1333
+ @just_collected = args[:just_collected] if args.key?(:just_collected)
1334
+ @required = args[:required] if args.key?(:required)
1335
+ @state = args[:state] if args.key?(:state)
1336
+ @value = args[:value] if args.key?(:value)
1337
+ end
1338
+ end
1339
+
1340
+ # Represents the query input. It can contain one of: 1. A conversational query
1341
+ # in the form of text. 2. An intent query that specifies which intent to trigger.
1342
+ # 3. Natural language speech audio to be processed. 4. An event to be triggered.
1343
+ #
1344
+ class GoogleCloudDialogflowCxV3QueryInput
1345
+ include Google::Apis::Core::Hashable
1346
+
1347
+ # Represents the natural speech audio to be processed.
1348
+ # Corresponds to the JSON property `audio`
1349
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3AudioInput]
1350
+ attr_accessor :audio
1351
+
1352
+ # Represents the input for dtmf event.
1353
+ # Corresponds to the JSON property `dtmf`
1354
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3DtmfInput]
1355
+ attr_accessor :dtmf
1356
+
1357
+ # Represents the event to trigger.
1358
+ # Corresponds to the JSON property `event`
1359
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3EventInput]
1360
+ attr_accessor :event
1361
+
1362
+ # Represents the intent to trigger programmatically rather than as a result of
1363
+ # natural language processing.
1364
+ # Corresponds to the JSON property `intent`
1365
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3IntentInput]
1366
+ attr_accessor :intent
1367
+
1368
+ # Required. The language of the input. See [Language Support](https://cloud.
1369
+ # google.com/dialogflow/docs/reference/language) for a list of the currently
1370
+ # supported language codes. Note that queries in the same session do not
1371
+ # necessarily need to specify the same language.
1372
+ # Corresponds to the JSON property `languageCode`
1373
+ # @return [String]
1374
+ attr_accessor :language_code
1375
+
1376
+ # Represents the natural language text to be processed.
1377
+ # Corresponds to the JSON property `text`
1378
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TextInput]
1379
+ attr_accessor :text
1380
+
1381
+ def initialize(**args)
1382
+ update!(**args)
1383
+ end
1384
+
1385
+ # Update properties of this object
1386
+ def update!(**args)
1387
+ @audio = args[:audio] if args.key?(:audio)
1388
+ @dtmf = args[:dtmf] if args.key?(:dtmf)
1389
+ @event = args[:event] if args.key?(:event)
1390
+ @intent = args[:intent] if args.key?(:intent)
1391
+ @language_code = args[:language_code] if args.key?(:language_code)
1392
+ @text = args[:text] if args.key?(:text)
1393
+ end
1394
+ end
1395
+
1396
+ # Metadata for ReloadDocument operation.
1397
+ class GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata
1398
+ include Google::Apis::Core::Hashable
1399
+
1400
+ # Metadata in google::longrunning::Operation for Knowledge operations.
1401
+ # Corresponds to the JSON property `genericMetadata`
1402
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata]
1403
+ attr_accessor :generic_metadata
1404
+
1405
+ def initialize(**args)
1406
+ update!(**args)
1407
+ end
1408
+
1409
+ # Update properties of this object
1410
+ def update!(**args)
1411
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
1412
+ end
1413
+ end
1414
+
1415
+ # Represents a response message that can be returned by a conversational agent.
1416
+ # Response messages are also used for output audio synthesis. The approach is as
1417
+ # follows: * If at least one OutputAudioText response is present, then all
1418
+ # OutputAudioText responses are linearly concatenated, and the result is used
1419
+ # for output audio synthesis. * If the OutputAudioText responses are a mixture
1420
+ # of text and SSML, then the concatenated result is treated as SSML; otherwise,
1421
+ # the result is treated as either text or SSML as appropriate. The agent
1422
+ # designer should ideally use either text or SSML consistently throughout the
1423
+ # bot design. * Otherwise, all Text responses are linearly concatenated, and the
1424
+ # result is used for output audio synthesis. This approach allows for more
1425
+ # sophisticated user experience scenarios, where the text displayed to the user
1426
+ # may differ from what is heard.
1427
+ class GoogleCloudDialogflowCxV3ResponseMessage
1428
+ include Google::Apis::Core::Hashable
1429
+
1430
+ # Indicates that the conversation succeeded, i.e., the bot handled the issue
1431
+ # that the customer talked to it about. Dialogflow only uses this to determine
1432
+ # which conversations should be counted as successful and doesn't process the
1433
+ # metadata in this message in any way. Note that Dialogflow also considers
1434
+ # conversations that get to the conversation end page as successful even if they
1435
+ # don't return ConversationSuccess. You may set this, for example: * In the
1436
+ # entry_fulfillment of a Page if entering the page indicates that the
1437
+ # conversation succeeded. * In a webhook response when you determine that you
1438
+ # handled the customer issue.
1439
+ # Corresponds to the JSON property `conversationSuccess`
1440
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess]
1441
+ attr_accessor :conversation_success
1442
+
1443
+ # Indicates that interaction with the Dialogflow agent has ended. This message
1444
+ # is generated by Dialogflow only and not supposed to be defined by the user.
1445
+ # Corresponds to the JSON property `endInteraction`
1446
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageEndInteraction]
1447
+ attr_accessor :end_interaction
1448
+
1449
+ # Indicates that the conversation should be handed off to a live agent.
1450
+ # Dialogflow only uses this to determine which conversations were handed off to
1451
+ # a human agent for measurement purposes. What else to do with this signal is up
1452
+ # to you and your handoff procedures. You may set this, for example: * In the
1453
+ # entry_fulfillment of a Page if entering the page indicates something went
1454
+ # extremely wrong in the conversation. * In a webhook response when you
1455
+ # determine that the customer issue can only be handled by a human.
1456
+ # Corresponds to the JSON property `liveAgentHandoff`
1457
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff]
1458
+ attr_accessor :live_agent_handoff
1459
+
1460
+ # Represents an audio message that is composed of both segments synthesized from
1461
+ # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
1462
+ # The external URIs are specified via play_audio. This message is generated by
1463
+ # Dialogflow only and not supposed to be defined by the user.
1464
+ # Corresponds to the JSON property `mixedAudio`
1465
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageMixedAudio]
1466
+ attr_accessor :mixed_audio
1467
+
1468
+ # A text or ssml response that is preferentially used for TTS output audio
1469
+ # synthesis, as described in the comment on the ResponseMessage message.
1470
+ # Corresponds to the JSON property `outputAudioText`
1471
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText]
1472
+ attr_accessor :output_audio_text
1473
+
1474
+ # Returns a response containing a custom, platform-specific payload.
1475
+ # Corresponds to the JSON property `payload`
1476
+ # @return [Hash<String,Object>]
1477
+ attr_accessor :payload
1478
+
1479
+ # Specifies an audio clip to be played by the client as part of the response.
1480
+ # Corresponds to the JSON property `playAudio`
1481
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessagePlayAudio]
1482
+ attr_accessor :play_audio
1483
+
1484
+ # The text response message.
1485
+ # Corresponds to the JSON property `text`
1486
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageText]
1487
+ attr_accessor :text
1488
+
1489
+ def initialize(**args)
1490
+ update!(**args)
1491
+ end
1492
+
1493
+ # Update properties of this object
1494
+ def update!(**args)
1495
+ @conversation_success = args[:conversation_success] if args.key?(:conversation_success)
1496
+ @end_interaction = args[:end_interaction] if args.key?(:end_interaction)
1497
+ @live_agent_handoff = args[:live_agent_handoff] if args.key?(:live_agent_handoff)
1498
+ @mixed_audio = args[:mixed_audio] if args.key?(:mixed_audio)
1499
+ @output_audio_text = args[:output_audio_text] if args.key?(:output_audio_text)
1500
+ @payload = args[:payload] if args.key?(:payload)
1501
+ @play_audio = args[:play_audio] if args.key?(:play_audio)
1502
+ @text = args[:text] if args.key?(:text)
1503
+ end
1504
+ end
1505
+
1506
+ # Indicates that the conversation succeeded, i.e., the bot handled the issue
1507
+ # that the customer talked to it about. Dialogflow only uses this to determine
1508
+ # which conversations should be counted as successful and doesn't process the
1509
+ # metadata in this message in any way. Note that Dialogflow also considers
1510
+ # conversations that get to the conversation end page as successful even if they
1511
+ # don't return ConversationSuccess. You may set this, for example: * In the
1512
+ # entry_fulfillment of a Page if entering the page indicates that the
1513
+ # conversation succeeded. * In a webhook response when you determine that you
1514
+ # handled the customer issue.
1515
+ class GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
1516
+ include Google::Apis::Core::Hashable
1517
+
1518
+ # Custom metadata. Dialogflow doesn't impose any structure on this.
1519
+ # Corresponds to the JSON property `metadata`
1520
+ # @return [Hash<String,Object>]
1521
+ attr_accessor :metadata
1522
+
1523
+ def initialize(**args)
1524
+ update!(**args)
1525
+ end
1526
+
1527
+ # Update properties of this object
1528
+ def update!(**args)
1529
+ @metadata = args[:metadata] if args.key?(:metadata)
1530
+ end
1531
+ end
1532
+
1533
+ # Indicates that interaction with the Dialogflow agent has ended. This message
1534
+ # is generated by Dialogflow only and not supposed to be defined by the user.
1535
+ class GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
1536
+ include Google::Apis::Core::Hashable
1537
+
1538
+ def initialize(**args)
1539
+ update!(**args)
1540
+ end
1541
+
1542
+ # Update properties of this object
1543
+ def update!(**args)
1544
+ end
1545
+ end
1546
+
1547
+ # Indicates that the conversation should be handed off to a live agent.
1548
+ # Dialogflow only uses this to determine which conversations were handed off to
1549
+ # a human agent for measurement purposes. What else to do with this signal is up
1550
+ # to you and your handoff procedures. You may set this, for example: * In the
1551
+ # entry_fulfillment of a Page if entering the page indicates something went
1552
+ # extremely wrong in the conversation. * In a webhook response when you
1553
+ # determine that the customer issue can only be handled by a human.
1554
+ class GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
1555
+ include Google::Apis::Core::Hashable
1556
+
1557
+ # Custom metadata for your handoff procedure. Dialogflow doesn't impose any
1558
+ # structure on this.
1559
+ # Corresponds to the JSON property `metadata`
1560
+ # @return [Hash<String,Object>]
1561
+ attr_accessor :metadata
1562
+
1563
+ def initialize(**args)
1564
+ update!(**args)
1565
+ end
1566
+
1567
+ # Update properties of this object
1568
+ def update!(**args)
1569
+ @metadata = args[:metadata] if args.key?(:metadata)
1570
+ end
1571
+ end
1572
+
1573
+ # Represents an audio message that is composed of both segments synthesized from
1574
+ # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
1575
+ # The external URIs are specified via play_audio. This message is generated by
1576
+ # Dialogflow only and not supposed to be defined by the user.
1577
+ class GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
1578
+ include Google::Apis::Core::Hashable
1579
+
1580
+ # Segments this audio response is composed of.
1581
+ # Corresponds to the JSON property `segments`
1582
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment>]
1583
+ attr_accessor :segments
1584
+
1585
+ def initialize(**args)
1586
+ update!(**args)
1587
+ end
1588
+
1589
+ # Update properties of this object
1590
+ def update!(**args)
1591
+ @segments = args[:segments] if args.key?(:segments)
1592
+ end
1593
+ end
1594
+
1595
+ # Represents one segment of audio.
1596
+ class GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
1597
+ include Google::Apis::Core::Hashable
1598
+
1599
+ # Output only. Whether the playback of this segment can be interrupted by the
1600
+ # end user's speech and the client should then start the next Dialogflow request.
1601
+ # Corresponds to the JSON property `allowPlaybackInterruption`
1602
+ # @return [Boolean]
1603
+ attr_accessor :allow_playback_interruption
1604
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
1605
+
1606
+ # Raw audio synthesized from the Dialogflow agent's response using the output
1607
+ # config specified in the request.
1608
+ # Corresponds to the JSON property `audio`
1609
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1610
+ # @return [String]
1611
+ attr_accessor :audio
1612
+
1613
+ # Client-specific URI that points to an audio clip accessible to the client.
1614
+ # Dialogflow does not impose any validation on it.
1615
+ # Corresponds to the JSON property `uri`
1616
+ # @return [String]
1617
+ attr_accessor :uri
1618
+
1619
+ def initialize(**args)
1620
+ update!(**args)
1621
+ end
1622
+
1623
+ # Update properties of this object
1624
+ def update!(**args)
1625
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1626
+ @audio = args[:audio] if args.key?(:audio)
1627
+ @uri = args[:uri] if args.key?(:uri)
1628
+ end
1629
+ end
1630
+
1631
+ # A text or ssml response that is preferentially used for TTS output audio
1632
+ # synthesis, as described in the comment on the ResponseMessage message.
1633
+ class GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
1634
+ include Google::Apis::Core::Hashable
1635
+
1636
+ # Output only. Whether the playback of this message can be interrupted by the
1637
+ # end user's speech and the client can then starts the next Dialogflow request.
1638
+ # Corresponds to the JSON property `allowPlaybackInterruption`
1639
+ # @return [Boolean]
1640
+ attr_accessor :allow_playback_interruption
1641
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
1642
+
1643
+ # The SSML text to be synthesized. For more information, see [SSML](/speech/text-
1644
+ # to-speech/docs/ssml).
1645
+ # Corresponds to the JSON property `ssml`
1646
+ # @return [String]
1647
+ attr_accessor :ssml
1648
+
1649
+ # The raw text to be synthesized.
1650
+ # Corresponds to the JSON property `text`
1651
+ # @return [String]
1652
+ attr_accessor :text
1653
+
1654
+ def initialize(**args)
1655
+ update!(**args)
1656
+ end
1657
+
1658
+ # Update properties of this object
1659
+ def update!(**args)
1660
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1661
+ @ssml = args[:ssml] if args.key?(:ssml)
1662
+ @text = args[:text] if args.key?(:text)
1663
+ end
1664
+ end
1665
+
1666
+ # Specifies an audio clip to be played by the client as part of the response.
1667
+ class GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
1668
+ include Google::Apis::Core::Hashable
1669
+
1670
+ # Output only. Whether the playback of this message can be interrupted by the
1671
+ # end user's speech and the client can then starts the next Dialogflow request.
1672
+ # Corresponds to the JSON property `allowPlaybackInterruption`
1673
+ # @return [Boolean]
1674
+ attr_accessor :allow_playback_interruption
1675
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
1676
+
1677
+ # Required. URI of the audio clip. Dialogflow does not impose any validation on
1678
+ # this value. It is specific to the client that reads it.
1679
+ # Corresponds to the JSON property `audioUri`
1680
+ # @return [String]
1681
+ attr_accessor :audio_uri
1682
+
1683
+ def initialize(**args)
1684
+ update!(**args)
1685
+ end
1686
+
1687
+ # Update properties of this object
1688
+ def update!(**args)
1689
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1690
+ @audio_uri = args[:audio_uri] if args.key?(:audio_uri)
1691
+ end
1692
+ end
1693
+
1694
+ # The text response message.
1695
+ class GoogleCloudDialogflowCxV3ResponseMessageText
1696
+ include Google::Apis::Core::Hashable
1697
+
1698
+ # Output only. Whether the playback of this message can be interrupted by the
1699
+ # end user's speech and the client can then starts the next Dialogflow request.
1700
+ # Corresponds to the JSON property `allowPlaybackInterruption`
1701
+ # @return [Boolean]
1702
+ attr_accessor :allow_playback_interruption
1703
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
1704
+
1705
+ # Required. A collection of text responses.
1706
+ # Corresponds to the JSON property `text`
1707
+ # @return [Array<String>]
1708
+ attr_accessor :text
1709
+
1710
+ def initialize(**args)
1711
+ update!(**args)
1712
+ end
1713
+
1714
+ # Update properties of this object
1715
+ def update!(**args)
1716
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1717
+ @text = args[:text] if args.key?(:text)
1718
+ end
1719
+ end
1720
+
1721
+ # Metadata returned for the TestCases.RunTestCase long running operation.
1722
+ class GoogleCloudDialogflowCxV3RunTestCaseMetadata
1723
+ include Google::Apis::Core::Hashable
1724
+
1725
+ def initialize(**args)
1726
+ update!(**args)
1727
+ end
1728
+
1729
+ # Update properties of this object
1730
+ def update!(**args)
1731
+ end
1732
+ end
1733
+
1734
+ # The response message for TestCases.RunTestCase.
1735
+ class GoogleCloudDialogflowCxV3RunTestCaseResponse
1736
+ include Google::Apis::Core::Hashable
1737
+
1738
+ # Represents a result from running a test case in an agent environment.
1739
+ # Corresponds to the JSON property `result`
1740
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestCaseResult]
1741
+ attr_accessor :result
1742
+
1743
+ def initialize(**args)
1744
+ update!(**args)
1745
+ end
1746
+
1747
+ # Update properties of this object
1748
+ def update!(**args)
1749
+ @result = args[:result] if args.key?(:result)
1750
+ end
1751
+ end
1752
+
1753
+ # Represents session information communicated to and from the webhook.
1754
+ class GoogleCloudDialogflowCxV3SessionInfo
1755
+ include Google::Apis::Core::Hashable
1756
+
1757
+ # Optional for WebhookRequest. Optional for WebhookResponse. All parameters
1758
+ # collected from forms and intents during the session. Parameters can be created,
1759
+ # updated, or removed by the webhook. To remove a parameter from the session,
1760
+ # the webhook should explicitly set the parameter value to null in
1761
+ # WebhookResponse. The map is keyed by parameters' display names.
1762
+ # Corresponds to the JSON property `parameters`
1763
+ # @return [Hash<String,Object>]
1764
+ attr_accessor :parameters
1765
+
1766
+ # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
1767
+ # identifier of the session. This field can be used by the webhook to identify a
1768
+ # user. Format: `projects//locations//agents//sessions/`.
1769
+ # Corresponds to the JSON property `session`
1770
+ # @return [String]
1771
+ attr_accessor :session
1772
+
1773
+ def initialize(**args)
1774
+ update!(**args)
1775
+ end
1776
+
1777
+ # Update properties of this object
1778
+ def update!(**args)
1779
+ @parameters = args[:parameters] if args.key?(:parameters)
1780
+ @session = args[:session] if args.key?(:session)
1781
+ end
1782
+ end
1783
+
1784
+ # Represents a test case.
1785
+ class GoogleCloudDialogflowCxV3TestCase
1786
+ include Google::Apis::Core::Hashable
1787
+
1788
+ # Output only. When the test was created.
1789
+ # Corresponds to the JSON property `creationTime`
1790
+ # @return [String]
1791
+ attr_accessor :creation_time
1792
+
1793
+ # Required. The human-readable name of the test case, unique within the agent.
1794
+ # Limit of 200 characters.
1795
+ # Corresponds to the JSON property `displayName`
1796
+ # @return [String]
1797
+ attr_accessor :display_name
1798
+
1799
+ # Represents a result from running a test case in an agent environment.
1800
+ # Corresponds to the JSON property `lastTestResult`
1801
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestCaseResult]
1802
+ attr_accessor :last_test_result
1803
+
1804
+ # The unique identifier of the test case. TestCases.CreateTestCase will populate
1805
+ # the name automatically. Otherwise use format: `projects//locations//agents/ /
1806
+ # testCases/`.
1807
+ # Corresponds to the JSON property `name`
1808
+ # @return [String]
1809
+ attr_accessor :name
1810
+
1811
+ # Additional freeform notes about the test case. Limit of 400 characters.
1812
+ # Corresponds to the JSON property `notes`
1813
+ # @return [String]
1814
+ attr_accessor :notes
1815
+
1816
+ # Tags are short descriptions that users may apply to test cases for
1817
+ # organizational and filtering purposes. Each tag should start with "#" and has
1818
+ # a limit of 30 characters.
1819
+ # Corresponds to the JSON property `tags`
1820
+ # @return [Array<String>]
1821
+ attr_accessor :tags
1822
+
1823
+ # The conversation turns uttered when the test case was created, in
1824
+ # chronological order. These include the canonical set of agent utterances that
1825
+ # should occur when the agent is working properly.
1826
+ # Corresponds to the JSON property `testCaseConversationTurns`
1827
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ConversationTurn>]
1828
+ attr_accessor :test_case_conversation_turns
1829
+
1830
+ # Represents configurations for a test case.
1831
+ # Corresponds to the JSON property `testConfig`
1832
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestConfig]
1833
+ attr_accessor :test_config
1834
+
1835
+ def initialize(**args)
1836
+ update!(**args)
1837
+ end
1838
+
1839
+ # Update properties of this object
1840
+ def update!(**args)
1841
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
1842
+ @display_name = args[:display_name] if args.key?(:display_name)
1843
+ @last_test_result = args[:last_test_result] if args.key?(:last_test_result)
1844
+ @name = args[:name] if args.key?(:name)
1845
+ @notes = args[:notes] if args.key?(:notes)
1846
+ @tags = args[:tags] if args.key?(:tags)
1847
+ @test_case_conversation_turns = args[:test_case_conversation_turns] if args.key?(:test_case_conversation_turns)
1848
+ @test_config = args[:test_config] if args.key?(:test_config)
1849
+ end
1850
+ end
1851
+
1852
+ # Error info for importing a test.
1853
+ class GoogleCloudDialogflowCxV3TestCaseError
1854
+ include Google::Apis::Core::Hashable
1855
+
1856
+ # The `Status` type defines a logical error model that is suitable for different
1857
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1858
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1859
+ # data: error code, error message, and error details. You can find out more
1860
+ # about this error model and how to work with it in the [API Design Guide](https:
1861
+ # //cloud.google.com/apis/design/errors).
1862
+ # Corresponds to the JSON property `status`
1863
+ # @return [Google::Apis::DialogflowV2::GoogleRpcStatus]
1864
+ attr_accessor :status
1865
+
1866
+ # Represents a test case.
1867
+ # Corresponds to the JSON property `testCase`
1868
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestCase]
1869
+ attr_accessor :test_case
1870
+
1871
+ def initialize(**args)
1872
+ update!(**args)
1873
+ end
1874
+
1875
+ # Update properties of this object
1876
+ def update!(**args)
1877
+ @status = args[:status] if args.key?(:status)
1878
+ @test_case = args[:test_case] if args.key?(:test_case)
1879
+ end
1880
+ end
1881
+
1882
+ # Represents a result from running a test case in an agent environment.
1883
+ class GoogleCloudDialogflowCxV3TestCaseResult
1884
+ include Google::Apis::Core::Hashable
1885
+
1886
+ # The conversation turns uttered during the test case replay in chronological
1887
+ # order.
1888
+ # Corresponds to the JSON property `conversationTurns`
1889
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ConversationTurn>]
1890
+ attr_accessor :conversation_turns
1891
+
1892
+ # Optional. Environment where the test was run. If not set, it indicates the
1893
+ # draft environment.
1894
+ # Corresponds to the JSON property `environment`
1895
+ # @return [String]
1896
+ attr_accessor :environment
1897
+
1898
+ # The resource name for the test case result. Format: `projects//locations//
1899
+ # agents//testCases/ /results/`.
1900
+ # Corresponds to the JSON property `name`
1901
+ # @return [String]
1902
+ attr_accessor :name
1903
+
1904
+ # Whether the test case passed in the agent environment.
1905
+ # Corresponds to the JSON property `testResult`
1906
+ # @return [String]
1907
+ attr_accessor :test_result
1908
+
1909
+ # The time that the test was run.
1910
+ # Corresponds to the JSON property `testTime`
1911
+ # @return [String]
1912
+ attr_accessor :test_time
1913
+
1914
+ def initialize(**args)
1915
+ update!(**args)
1916
+ end
1917
+
1918
+ # Update properties of this object
1919
+ def update!(**args)
1920
+ @conversation_turns = args[:conversation_turns] if args.key?(:conversation_turns)
1921
+ @environment = args[:environment] if args.key?(:environment)
1922
+ @name = args[:name] if args.key?(:name)
1923
+ @test_result = args[:test_result] if args.key?(:test_result)
1924
+ @test_time = args[:test_time] if args.key?(:test_time)
1925
+ end
1926
+ end
1927
+
1928
+ # Represents configurations for a test case.
1929
+ class GoogleCloudDialogflowCxV3TestConfig
1930
+ include Google::Apis::Core::Hashable
1931
+
1932
+ # Flow name. If not set, default start flow is assumed. Format: `projects//
1933
+ # locations//agents//flows/`.
1934
+ # Corresponds to the JSON property `flow`
1935
+ # @return [String]
1936
+ attr_accessor :flow
1937
+
1938
+ # Session parameters to be compared when calculating differences.
1939
+ # Corresponds to the JSON property `trackingParameters`
1940
+ # @return [Array<String>]
1941
+ attr_accessor :tracking_parameters
1942
+
1943
+ def initialize(**args)
1944
+ update!(**args)
1945
+ end
1946
+
1947
+ # Update properties of this object
1948
+ def update!(**args)
1949
+ @flow = args[:flow] if args.key?(:flow)
1950
+ @tracking_parameters = args[:tracking_parameters] if args.key?(:tracking_parameters)
1951
+ end
1952
+ end
1953
+
1954
+ # Error info for running a test.
1955
+ class GoogleCloudDialogflowCxV3TestError
1956
+ include Google::Apis::Core::Hashable
1957
+
1958
+ # The `Status` type defines a logical error model that is suitable for different
1959
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1960
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1961
+ # data: error code, error message, and error details. You can find out more
1962
+ # about this error model and how to work with it in the [API Design Guide](https:
1963
+ # //cloud.google.com/apis/design/errors).
1964
+ # Corresponds to the JSON property `status`
1965
+ # @return [Google::Apis::DialogflowV2::GoogleRpcStatus]
1966
+ attr_accessor :status
1967
+
1968
+ # The test case resource name.
1969
+ # Corresponds to the JSON property `testCase`
1970
+ # @return [String]
1971
+ attr_accessor :test_case
1972
+
1973
+ # The timestamp when the test was completed.
1974
+ # Corresponds to the JSON property `testTime`
1975
+ # @return [String]
1976
+ attr_accessor :test_time
1977
+
1978
+ def initialize(**args)
1979
+ update!(**args)
1980
+ end
1981
+
1982
+ # Update properties of this object
1983
+ def update!(**args)
1984
+ @status = args[:status] if args.key?(:status)
1985
+ @test_case = args[:test_case] if args.key?(:test_case)
1986
+ @test_time = args[:test_time] if args.key?(:test_time)
1987
+ end
1988
+ end
1989
+
1990
+ # The description of differences between original and replayed agent output.
1991
+ class GoogleCloudDialogflowCxV3TestRunDifference
1992
+ include Google::Apis::Core::Hashable
1993
+
1994
+ # A description of the diff, showing the actual output vs expected output.
1995
+ # Corresponds to the JSON property `description`
1996
+ # @return [String]
1997
+ attr_accessor :description
1998
+
1999
+ # The type of diff.
2000
+ # Corresponds to the JSON property `type`
2001
+ # @return [String]
2002
+ attr_accessor :type
2003
+
2004
+ def initialize(**args)
2005
+ update!(**args)
2006
+ end
2007
+
2008
+ # Update properties of this object
2009
+ def update!(**args)
2010
+ @description = args[:description] if args.key?(:description)
2011
+ @type = args[:type] if args.key?(:type)
2012
+ end
2013
+ end
2014
+
2015
+ # Represents the natural language text to be processed.
2016
+ class GoogleCloudDialogflowCxV3TextInput
2017
+ include Google::Apis::Core::Hashable
2018
+
2019
+ # Required. The UTF-8 encoded natural language text to be processed. Text length
2020
+ # must not exceed 256 characters.
2021
+ # Corresponds to the JSON property `text`
2022
+ # @return [String]
2023
+ attr_accessor :text
2024
+
2025
+ def initialize(**args)
2026
+ update!(**args)
2027
+ end
2028
+
2029
+ # Update properties of this object
2030
+ def update!(**args)
2031
+ @text = args[:text] if args.key?(:text)
2032
+ end
2033
+ end
2034
+
2035
+ # A transition route specifies a intent that can be matched and/or a data
2036
+ # condition that can be evaluated during a session. When a specified transition
2037
+ # is matched, the following actions are taken in order: * If there is a `
2038
+ # trigger_fulfillment` associated with the transition, it will be called. * If
2039
+ # there is a `target_page` associated with the transition, the session will
2040
+ # transition into the specified page. * If there is a `target_flow` associated
2041
+ # with the transition, the session will transition into the specified flow.
2042
+ class GoogleCloudDialogflowCxV3TransitionRoute
2043
+ include Google::Apis::Core::Hashable
2044
+
2045
+ # The condition to evaluate against form parameters or session parameters. See
2046
+ # the [conditions reference](https://cloud.google.com/dialogflow/cx/docs/
2047
+ # reference/condition). At least one of `intent` or `condition` must be
2048
+ # specified. When both `intent` and `condition` are specified, the transition
2049
+ # can only happen when both are fulfilled.
2050
+ # Corresponds to the JSON property `condition`
2051
+ # @return [String]
2052
+ attr_accessor :condition
2053
+
2054
+ # The unique identifier of an Intent. Format: `projects//locations//agents//
2055
+ # intents/`. Indicates that the transition can only happen when the given intent
2056
+ # is matched. At least one of `intent` or `condition` must be specified. When
2057
+ # both `intent` and `condition` are specified, the transition can only happen
2058
+ # when both are fulfilled.
2059
+ # Corresponds to the JSON property `intent`
2060
+ # @return [String]
2061
+ attr_accessor :intent
2062
+
2063
+ # Output only. The unique identifier of this transition route.
2064
+ # Corresponds to the JSON property `name`
2065
+ # @return [String]
2066
+ attr_accessor :name
2067
+
2068
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
2069
+ # .
2070
+ # Corresponds to the JSON property `targetFlow`
2071
+ # @return [String]
2072
+ attr_accessor :target_flow
2073
+
2074
+ # The target page to transition to. Format: `projects//locations//agents//flows//
2075
+ # pages/`.
2076
+ # Corresponds to the JSON property `targetPage`
2077
+ # @return [String]
2078
+ attr_accessor :target_page
2079
+
2080
+ # A fulfillment can do one or more of the following actions at the same time: *
2081
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
2082
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
2083
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
2084
+ # the page's entry fulfillment can add a static response to the QueryResult in
2085
+ # the returning DetectIntentResponse, call the webhook (for example, to load
2086
+ # user data from a database), or both.
2087
+ # Corresponds to the JSON property `triggerFulfillment`
2088
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3Fulfillment]
2089
+ attr_accessor :trigger_fulfillment
2090
+
2091
+ def initialize(**args)
2092
+ update!(**args)
2093
+ end
2094
+
2095
+ # Update properties of this object
2096
+ def update!(**args)
2097
+ @condition = args[:condition] if args.key?(:condition)
2098
+ @intent = args[:intent] if args.key?(:intent)
2099
+ @name = args[:name] if args.key?(:name)
2100
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
2101
+ @target_page = args[:target_page] if args.key?(:target_page)
2102
+ @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
2103
+ end
2104
+ end
2105
+
2106
+ # Metadata for UpdateDocument operation.
2107
+ class GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata
2108
+ include Google::Apis::Core::Hashable
2109
+
2110
+ # Metadata in google::longrunning::Operation for Knowledge operations.
2111
+ # Corresponds to the JSON property `genericMetadata`
2112
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata]
2113
+ attr_accessor :generic_metadata
2114
+
2115
+ def initialize(**args)
2116
+ update!(**args)
2117
+ end
2118
+
2119
+ # Update properties of this object
2120
+ def update!(**args)
2121
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
2122
+ end
2123
+ end
2124
+
2125
+ # The request message for a webhook call.
2126
+ class GoogleCloudDialogflowCxV3WebhookRequest
2127
+ include Google::Apis::Core::Hashable
2128
+
2129
+ # Always present. The unique identifier of the DetectIntentResponse that will be
2130
+ # returned to the API caller.
2131
+ # Corresponds to the JSON property `detectIntentResponseId`
2132
+ # @return [String]
2133
+ attr_accessor :detect_intent_response_id
2134
+
2135
+ # Represents fulfillment information communicated to the webhook.
2136
+ # Corresponds to the JSON property `fulfillmentInfo`
2137
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo]
2138
+ attr_accessor :fulfillment_info
2139
+
2140
+ # Represents intent information communicated to the webhook.
2141
+ # Corresponds to the JSON property `intentInfo`
2142
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookRequestIntentInfo]
2143
+ attr_accessor :intent_info
2144
+
2145
+ # The list of rich message responses to present to the user. Webhook can choose
2146
+ # to append or replace this list in WebhookResponse.fulfillment_response;
2147
+ # Corresponds to the JSON property `messages`
2148
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessage>]
2149
+ attr_accessor :messages
2150
+
2151
+ # Represents page information communicated to and from the webhook.
2152
+ # Corresponds to the JSON property `pageInfo`
2153
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfo]
2154
+ attr_accessor :page_info
2155
+
2156
+ # Custom data set in QueryParameters.payload.
2157
+ # Corresponds to the JSON property `payload`
2158
+ # @return [Hash<String,Object>]
2159
+ attr_accessor :payload
2160
+
2161
+ # Represents session information communicated to and from the webhook.
2162
+ # Corresponds to the JSON property `sessionInfo`
2163
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3SessionInfo]
2164
+ attr_accessor :session_info
2165
+
2166
+ def initialize(**args)
2167
+ update!(**args)
2168
+ end
2169
+
2170
+ # Update properties of this object
2171
+ def update!(**args)
2172
+ @detect_intent_response_id = args[:detect_intent_response_id] if args.key?(:detect_intent_response_id)
2173
+ @fulfillment_info = args[:fulfillment_info] if args.key?(:fulfillment_info)
2174
+ @intent_info = args[:intent_info] if args.key?(:intent_info)
2175
+ @messages = args[:messages] if args.key?(:messages)
2176
+ @page_info = args[:page_info] if args.key?(:page_info)
2177
+ @payload = args[:payload] if args.key?(:payload)
2178
+ @session_info = args[:session_info] if args.key?(:session_info)
2179
+ end
2180
+ end
2181
+
2182
+ # Represents fulfillment information communicated to the webhook.
2183
+ class GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
2184
+ include Google::Apis::Core::Hashable
2185
+
2186
+ # Always present. The tag used to identify which fulfillment is being called.
2187
+ # Corresponds to the JSON property `tag`
2188
+ # @return [String]
2189
+ attr_accessor :tag
2190
+
2191
+ def initialize(**args)
2192
+ update!(**args)
2193
+ end
2194
+
2195
+ # Update properties of this object
2196
+ def update!(**args)
2197
+ @tag = args[:tag] if args.key?(:tag)
2198
+ end
2199
+ end
2200
+
2201
+ # Represents intent information communicated to the webhook.
2202
+ class GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
2203
+ include Google::Apis::Core::Hashable
2204
+
2205
+ # Always present. The unique identifier of the last matched intent. Format: `
2206
+ # projects//locations//agents//intents/`.
2207
+ # Corresponds to the JSON property `lastMatchedIntent`
2208
+ # @return [String]
2209
+ attr_accessor :last_matched_intent
2210
+
2211
+ # Parameters identified as a result of intent matching. This is a map of the
2212
+ # name of the identified parameter to the value of the parameter identified from
2213
+ # the user's utterance. All parameters defined in the matched intent that are
2214
+ # identified will be surfaced here.
2215
+ # Corresponds to the JSON property `parameters`
2216
+ # @return [Hash<String,Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue>]
2217
+ attr_accessor :parameters
2218
+
2219
+ def initialize(**args)
2220
+ update!(**args)
2221
+ end
2222
+
2223
+ # Update properties of this object
2224
+ def update!(**args)
2225
+ @last_matched_intent = args[:last_matched_intent] if args.key?(:last_matched_intent)
2226
+ @parameters = args[:parameters] if args.key?(:parameters)
2227
+ end
2228
+ end
2229
+
2230
+ # Represents a value for an intent parameter.
2231
+ class GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
2232
+ include Google::Apis::Core::Hashable
2233
+
2234
+ # Always present. Original text value extracted from user utterance.
2235
+ # Corresponds to the JSON property `originalValue`
2236
+ # @return [String]
2237
+ attr_accessor :original_value
2238
+
2239
+ # Always present. Structured value for the parameter extracted from user
2240
+ # utterance.
2241
+ # Corresponds to the JSON property `resolvedValue`
2242
+ # @return [Object]
2243
+ attr_accessor :resolved_value
2244
+
2245
+ def initialize(**args)
2246
+ update!(**args)
2247
+ end
2248
+
2249
+ # Update properties of this object
2250
+ def update!(**args)
2251
+ @original_value = args[:original_value] if args.key?(:original_value)
2252
+ @resolved_value = args[:resolved_value] if args.key?(:resolved_value)
2253
+ end
2254
+ end
2255
+
2256
+ # The response message for a webhook call.
2257
+ class GoogleCloudDialogflowCxV3WebhookResponse
2258
+ include Google::Apis::Core::Hashable
2259
+
2260
+ # Represents a fulfillment response to the user.
2261
+ # Corresponds to the JSON property `fulfillmentResponse`
2262
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse]
2263
+ attr_accessor :fulfillment_response
2264
+
2265
+ # Represents page information communicated to and from the webhook.
2266
+ # Corresponds to the JSON property `pageInfo`
2267
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfo]
2268
+ attr_accessor :page_info
2269
+
2270
+ # Value to append directly to QueryResult.webhook_payloads.
2271
+ # Corresponds to the JSON property `payload`
2272
+ # @return [Hash<String,Object>]
2273
+ attr_accessor :payload
2274
+
2275
+ # Represents session information communicated to and from the webhook.
2276
+ # Corresponds to the JSON property `sessionInfo`
2277
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3SessionInfo]
2278
+ attr_accessor :session_info
2279
+
2280
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
2281
+ # .
2282
+ # Corresponds to the JSON property `targetFlow`
2283
+ # @return [String]
2284
+ attr_accessor :target_flow
2285
+
2286
+ # The target page to transition to. Format: `projects//locations//agents//flows//
2287
+ # pages/`.
2288
+ # Corresponds to the JSON property `targetPage`
2289
+ # @return [String]
2290
+ attr_accessor :target_page
2291
+
2292
+ def initialize(**args)
2293
+ update!(**args)
2294
+ end
2295
+
2296
+ # Update properties of this object
2297
+ def update!(**args)
2298
+ @fulfillment_response = args[:fulfillment_response] if args.key?(:fulfillment_response)
2299
+ @page_info = args[:page_info] if args.key?(:page_info)
2300
+ @payload = args[:payload] if args.key?(:payload)
2301
+ @session_info = args[:session_info] if args.key?(:session_info)
2302
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
2303
+ @target_page = args[:target_page] if args.key?(:target_page)
2304
+ end
2305
+ end
2306
+
2307
+ # Represents a fulfillment response to the user.
2308
+ class GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
2309
+ include Google::Apis::Core::Hashable
2310
+
2311
+ # Merge behavior for `messages`.
2312
+ # Corresponds to the JSON property `mergeBehavior`
2313
+ # @return [String]
2314
+ attr_accessor :merge_behavior
2315
+
2316
+ # The list of rich message responses to present to the user.
2317
+ # Corresponds to the JSON property `messages`
2318
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessage>]
2319
+ attr_accessor :messages
2320
+
2321
+ def initialize(**args)
2322
+ update!(**args)
2323
+ end
2324
+
2325
+ # Update properties of this object
2326
+ def update!(**args)
2327
+ @merge_behavior = args[:merge_behavior] if args.key?(:merge_behavior)
2328
+ @messages = args[:messages] if args.key?(:messages)
2329
+ end
2330
+ end
2331
+
2332
+ # Represents the natural speech audio to be processed.
2333
+ class GoogleCloudDialogflowCxV3beta1AudioInput
2334
+ include Google::Apis::Core::Hashable
2335
+
2336
+ # The natural language speech audio to be processed. A single request can
2337
+ # contain up to 1 minute of speech audio data. The transcribed text cannot
2338
+ # contain more than 256 bytes. For non-streaming audio detect intent, both `
2339
+ # config` and `audio` must be provided. For streaming audio detect intent, `
2340
+ # config` must be provided in the first request and `audio` must be provided in
2341
+ # all following requests.
2342
+ # Corresponds to the JSON property `audio`
2343
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2344
+ # @return [String]
2345
+ attr_accessor :audio
2346
+
2347
+ # Instructs the speech recognizer on how to process the audio content.
2348
+ # Corresponds to the JSON property `config`
2349
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1InputAudioConfig]
2350
+ attr_accessor :config
2351
+
2352
+ def initialize(**args)
2353
+ update!(**args)
2354
+ end
2355
+
2356
+ # Update properties of this object
2357
+ def update!(**args)
2358
+ @audio = args[:audio] if args.key?(:audio)
2359
+ @config = args[:config] if args.key?(:config)
2360
+ end
2361
+ end
2362
+
2363
+ # Metadata returned for the TestCases.BatchRunTestCases long running operation.
2364
+ class GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
2365
+ include Google::Apis::Core::Hashable
2366
+
2367
+ # The test errors.
2368
+ # Corresponds to the JSON property `errors`
2369
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestError>]
2370
+ attr_accessor :errors
2371
+
2372
+ def initialize(**args)
2373
+ update!(**args)
2374
+ end
2375
+
2376
+ # Update properties of this object
2377
+ def update!(**args)
2378
+ @errors = args[:errors] if args.key?(:errors)
2379
+ end
2380
+ end
2381
+
2382
+ # The response message for TestCases.BatchRunTestCases.
2383
+ class GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
2384
+ include Google::Apis::Core::Hashable
2385
+
2386
+ # The test case results. The detailed conversation turns are empty in this
2387
+ # response.
2388
+ # Corresponds to the JSON property `results`
2389
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestCaseResult>]
2390
+ attr_accessor :results
2391
+
2392
+ def initialize(**args)
2393
+ update!(**args)
2394
+ end
2395
+
2396
+ # Update properties of this object
2397
+ def update!(**args)
2398
+ @results = args[:results] if args.key?(:results)
2399
+ end
2400
+ end
2401
+
2402
+ # One interaction between a human and virtual agent. The human provides some
2403
+ # input and the virtual agent provides a response.
2404
+ class GoogleCloudDialogflowCxV3beta1ConversationTurn
2405
+ include Google::Apis::Core::Hashable
2406
+
2407
+ # The input from the human user.
2408
+ # Corresponds to the JSON property `userInput`
2409
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput]
2410
+ attr_accessor :user_input
2411
+
2412
+ # The output from the virtual agent.
2413
+ # Corresponds to the JSON property `virtualAgentOutput`
2414
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput]
2415
+ attr_accessor :virtual_agent_output
2416
+
2417
+ def initialize(**args)
2418
+ update!(**args)
2419
+ end
2420
+
2421
+ # Update properties of this object
2422
+ def update!(**args)
2423
+ @user_input = args[:user_input] if args.key?(:user_input)
2424
+ @virtual_agent_output = args[:virtual_agent_output] if args.key?(:virtual_agent_output)
2425
+ end
2426
+ end
2427
+
2428
+ # The input from the human user.
2429
+ class GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
2430
+ include Google::Apis::Core::Hashable
2431
+
2432
+ # Parameters that need to be injected into the conversation during intent
2433
+ # detection.
2434
+ # Corresponds to the JSON property `injectedParameters`
2435
+ # @return [Hash<String,Object>]
2436
+ attr_accessor :injected_parameters
2437
+
2438
+ # Represents the query input. It can contain one of: 1. A conversational query
2439
+ # in the form of text. 2. An intent query that specifies which intent to trigger.
2440
+ # 3. Natural language speech audio to be processed. 4. An event to be triggered.
2441
+ #
2442
+ # Corresponds to the JSON property `input`
2443
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1QueryInput]
2444
+ attr_accessor :input
2445
+
2446
+ # If webhooks should be allowed to trigger in response to the user utterance.
2447
+ # Often if parameters are injected, webhooks should not be enabled.
2448
+ # Corresponds to the JSON property `isWebhookEnabled`
2449
+ # @return [Boolean]
2450
+ attr_accessor :is_webhook_enabled
2451
+ alias_method :is_webhook_enabled?, :is_webhook_enabled
2452
+
2453
+ def initialize(**args)
2454
+ update!(**args)
2455
+ end
2456
+
2457
+ # Update properties of this object
2458
+ def update!(**args)
2459
+ @injected_parameters = args[:injected_parameters] if args.key?(:injected_parameters)
2460
+ @input = args[:input] if args.key?(:input)
2461
+ @is_webhook_enabled = args[:is_webhook_enabled] if args.key?(:is_webhook_enabled)
2462
+ end
2463
+ end
2464
+
2465
+ # The output from the virtual agent.
2466
+ class GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
2467
+ include Google::Apis::Core::Hashable
2468
+
2469
+ # A Dialogflow CX conversation (session) can be described and visualized as a
2470
+ # state machine. The states of a CX session are represented by pages. For each
2471
+ # flow, you define many pages, where your combined pages can handle a complete
2472
+ # conversation on the topics the flow is designed for. At any given moment,
2473
+ # exactly one page is the current page, the current page is considered active,
2474
+ # and the flow associated with that page is considered active. Every flow has a
2475
+ # special start page. When a flow initially becomes active, the start page page
2476
+ # becomes the current page. For each conversational turn, the current page will
2477
+ # either stay the same or transition to another page. You configure each page to
2478
+ # collect information from the end-user that is relevant for the conversational
2479
+ # state represented by the page. For more information, see the [Page guide](
2480
+ # https://cloud.google.com/dialogflow/cx/docs/concept/page).
2481
+ # Corresponds to the JSON property `currentPage`
2482
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Page]
2483
+ attr_accessor :current_page
2484
+
2485
+ # Required. Input only. The diagnostic info output for the turn.
2486
+ # Corresponds to the JSON property `diagnosticInfo`
2487
+ # @return [Hash<String,Object>]
2488
+ attr_accessor :diagnostic_info
2489
+
2490
+ # Output only. If this is part of a result conversation turn, the list of
2491
+ # differences between the original run and the replay for this output, if any.
2492
+ # Corresponds to the JSON property `differences`
2493
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestRunDifference>]
2494
+ attr_accessor :differences
2495
+
2496
+ # The session parameters available to the bot at this point.
2497
+ # Corresponds to the JSON property `sessionParameters`
2498
+ # @return [Hash<String,Object>]
2499
+ attr_accessor :session_parameters
2500
+
2501
+ # The `Status` type defines a logical error model that is suitable for different
2502
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2503
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2504
+ # data: error code, error message, and error details. You can find out more
2505
+ # about this error model and how to work with it in the [API Design Guide](https:
2506
+ # //cloud.google.com/apis/design/errors).
2507
+ # Corresponds to the JSON property `status`
2508
+ # @return [Google::Apis::DialogflowV2::GoogleRpcStatus]
2509
+ attr_accessor :status
2510
+
2511
+ # The text responses from the agent for the turn.
2512
+ # Corresponds to the JSON property `textResponses`
2513
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageText>]
2514
+ attr_accessor :text_responses
2515
+
2516
+ # An intent represents a user's intent to interact with a conversational agent.
2517
+ # You can provide information for the Dialogflow API to use to match user input
2518
+ # to an intent by adding training phrases (i.e., examples of user input) to your
2519
+ # intent.
2520
+ # Corresponds to the JSON property `triggeredIntent`
2521
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Intent]
2522
+ attr_accessor :triggered_intent
2523
+
2524
+ def initialize(**args)
2525
+ update!(**args)
2526
+ end
2527
+
2528
+ # Update properties of this object
2529
+ def update!(**args)
2530
+ @current_page = args[:current_page] if args.key?(:current_page)
2531
+ @diagnostic_info = args[:diagnostic_info] if args.key?(:diagnostic_info)
2532
+ @differences = args[:differences] if args.key?(:differences)
2533
+ @session_parameters = args[:session_parameters] if args.key?(:session_parameters)
2534
+ @status = args[:status] if args.key?(:status)
2535
+ @text_responses = args[:text_responses] if args.key?(:text_responses)
2536
+ @triggered_intent = args[:triggered_intent] if args.key?(:triggered_intent)
2537
+ end
2538
+ end
2539
+
2540
+ # Metadata for CreateDocument operation.
2541
+ class GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata
2542
+ include Google::Apis::Core::Hashable
2543
+
2544
+ # Metadata in google::longrunning::Operation for Knowledge operations.
2545
+ # Corresponds to the JSON property `genericMetadata`
2546
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata]
2547
+ attr_accessor :generic_metadata
2548
+
2549
+ def initialize(**args)
2550
+ update!(**args)
2551
+ end
2552
+
2553
+ # Update properties of this object
2554
+ def update!(**args)
2555
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
2556
+ end
2557
+ end
2558
+
2559
+ # Metadata associated with the long running operation for Versions.CreateVersion.
2560
+ class GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
2561
+ include Google::Apis::Core::Hashable
2562
+
2563
+ # Name of the created version. Format: `projects//locations//agents//flows//
2564
+ # versions/`.
2565
+ # Corresponds to the JSON property `version`
2566
+ # @return [String]
2567
+ attr_accessor :version
2568
+
2569
+ def initialize(**args)
2570
+ update!(**args)
2571
+ end
2572
+
2573
+ # Update properties of this object
2574
+ def update!(**args)
2575
+ @version = args[:version] if args.key?(:version)
2576
+ end
2577
+ end
2578
+
2579
+ # Metadata for DeleteDocument operation.
2580
+ class GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata
2581
+ include Google::Apis::Core::Hashable
2582
+
2583
+ # Metadata in google::longrunning::Operation for Knowledge operations.
2584
+ # Corresponds to the JSON property `genericMetadata`
2585
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata]
2586
+ attr_accessor :generic_metadata
2587
+
2588
+ def initialize(**args)
2589
+ update!(**args)
2590
+ end
2591
+
2592
+ # Update properties of this object
2593
+ def update!(**args)
2594
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
2595
+ end
2596
+ end
2597
+
2598
+ # Represents the input for dtmf event.
2599
+ class GoogleCloudDialogflowCxV3beta1DtmfInput
2600
+ include Google::Apis::Core::Hashable
2601
+
2602
+ # The dtmf digits.
2603
+ # Corresponds to the JSON property `digits`
2604
+ # @return [String]
2605
+ attr_accessor :digits
2606
+
2607
+ # The finish digit (if any).
2608
+ # Corresponds to the JSON property `finishDigit`
2609
+ # @return [String]
2610
+ attr_accessor :finish_digit
2611
+
2612
+ def initialize(**args)
2613
+ update!(**args)
2614
+ end
2615
+
2616
+ # Update properties of this object
2617
+ def update!(**args)
2618
+ @digits = args[:digits] if args.key?(:digits)
2619
+ @finish_digit = args[:finish_digit] if args.key?(:finish_digit)
2620
+ end
2621
+ end
2622
+
2623
+ # An event handler specifies an event that can be handled during a session. When
2624
+ # the specified event happens, the following actions are taken in order: * If
2625
+ # there is a `trigger_fulfillment` associated with the event, it will be called.
2626
+ # * If there is a `target_page` associated with the event, the session will
2627
+ # transition into the specified page. * If there is a `target_flow` associated
2628
+ # with the event, the session will transition into the specified flow.
2629
+ class GoogleCloudDialogflowCxV3beta1EventHandler
2630
+ include Google::Apis::Core::Hashable
2631
+
2632
+ # Required. The name of the event to handle.
2633
+ # Corresponds to the JSON property `event`
2634
+ # @return [String]
2635
+ attr_accessor :event
2636
+
2637
+ # Output only. The unique identifier of this event handler.
2638
+ # Corresponds to the JSON property `name`
2639
+ # @return [String]
2640
+ attr_accessor :name
2641
+
2642
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
2643
+ # .
2644
+ # Corresponds to the JSON property `targetFlow`
2645
+ # @return [String]
2646
+ attr_accessor :target_flow
2647
+
2648
+ # The target page to transition to. Format: `projects//locations//agents//flows//
2649
+ # pages/`.
2650
+ # Corresponds to the JSON property `targetPage`
2651
+ # @return [String]
2652
+ attr_accessor :target_page
2653
+
2654
+ # A fulfillment can do one or more of the following actions at the same time: *
2655
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
2656
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
2657
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
2658
+ # the page's entry fulfillment can add a static response to the QueryResult in
2659
+ # the returning DetectIntentResponse, call the webhook (for example, to load
2660
+ # user data from a database), or both.
2661
+ # Corresponds to the JSON property `triggerFulfillment`
2662
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Fulfillment]
2663
+ attr_accessor :trigger_fulfillment
2664
+
2665
+ def initialize(**args)
2666
+ update!(**args)
2667
+ end
2668
+
2669
+ # Update properties of this object
2670
+ def update!(**args)
2671
+ @event = args[:event] if args.key?(:event)
2672
+ @name = args[:name] if args.key?(:name)
2673
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
2674
+ @target_page = args[:target_page] if args.key?(:target_page)
2675
+ @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
2676
+ end
2677
+ end
2678
+
2679
+ # Represents the event to trigger.
2680
+ class GoogleCloudDialogflowCxV3beta1EventInput
2681
+ include Google::Apis::Core::Hashable
2682
+
2683
+ # Name of the event.
2684
+ # Corresponds to the JSON property `event`
2685
+ # @return [String]
2686
+ attr_accessor :event
2687
+
2688
+ def initialize(**args)
2689
+ update!(**args)
2690
+ end
2691
+
2692
+ # Update properties of this object
2693
+ def update!(**args)
2694
+ @event = args[:event] if args.key?(:event)
2695
+ end
2696
+ end
2697
+
2698
+ # The response message for Agents.ExportAgent.
2699
+ class GoogleCloudDialogflowCxV3beta1ExportAgentResponse
2700
+ include Google::Apis::Core::Hashable
2701
+
2702
+ # Uncompressed raw byte content for agent.
2703
+ # Corresponds to the JSON property `agentContent`
2704
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2705
+ # @return [String]
2706
+ attr_accessor :agent_content
2707
+
2708
+ # The URI to a file containing the exported agent. This field is populated only
2709
+ # if `agent_uri` is specified in ExportAgentRequest.
2710
+ # Corresponds to the JSON property `agentUri`
2711
+ # @return [String]
2712
+ attr_accessor :agent_uri
2713
+
2714
+ def initialize(**args)
2715
+ update!(**args)
2716
+ end
2717
+
2718
+ # Update properties of this object
2719
+ def update!(**args)
2720
+ @agent_content = args[:agent_content] if args.key?(:agent_content)
2721
+ @agent_uri = args[:agent_uri] if args.key?(:agent_uri)
2722
+ end
2723
+ end
2724
+
2725
+ # Metadata returned for the TestCases.ExportTestCases long running operation.
2726
+ class GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata
2727
+ include Google::Apis::Core::Hashable
2728
+
2729
+ def initialize(**args)
2730
+ update!(**args)
2731
+ end
2732
+
2733
+ # Update properties of this object
2734
+ def update!(**args)
2735
+ end
2736
+ end
2737
+
2738
+ # The response message for TestCases.ExportTestCases.
2739
+ class GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
2740
+ include Google::Apis::Core::Hashable
2741
+
2742
+ # Uncompressed raw byte content for test cases.
2743
+ # Corresponds to the JSON property `content`
2744
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2745
+ # @return [String]
2746
+ attr_accessor :content
2747
+
2748
+ # The URI to a file containing the exported test cases. This field is populated
2749
+ # only if `gcs_uri` is specified in ExportTestCasesRequest.
2750
+ # Corresponds to the JSON property `gcsUri`
2751
+ # @return [String]
2752
+ attr_accessor :gcs_uri
2753
+
2754
+ def initialize(**args)
2755
+ update!(**args)
2756
+ end
2757
+
2758
+ # Update properties of this object
2759
+ def update!(**args)
2760
+ @content = args[:content] if args.key?(:content)
2761
+ @gcs_uri = args[:gcs_uri] if args.key?(:gcs_uri)
2762
+ end
2763
+ end
2764
+
2765
+ # A form is a data model that groups related parameters that can be collected
2766
+ # from the user. The process in which the agent prompts the user and collects
2767
+ # parameter values from the user is called form filling. A form can be added to
2768
+ # a page. When form filling is done, the filled parameters will be written to
2769
+ # the session.
2770
+ class GoogleCloudDialogflowCxV3beta1Form
2771
+ include Google::Apis::Core::Hashable
2772
+
2773
+ # Parameters to collect from the user.
2774
+ # Corresponds to the JSON property `parameters`
2775
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FormParameter>]
2776
+ attr_accessor :parameters
2777
+
2778
+ def initialize(**args)
2779
+ update!(**args)
2780
+ end
2781
+
2782
+ # Update properties of this object
2783
+ def update!(**args)
2784
+ @parameters = args[:parameters] if args.key?(:parameters)
2785
+ end
2786
+ end
2787
+
2788
+ # Represents a form parameter.
2789
+ class GoogleCloudDialogflowCxV3beta1FormParameter
2790
+ include Google::Apis::Core::Hashable
2791
+
2792
+ # The default value of an optional parameter. If the parameter is required, the
2793
+ # default value will be ignored.
2794
+ # Corresponds to the JSON property `defaultValue`
2795
+ # @return [Object]
2796
+ attr_accessor :default_value
2797
+
2798
+ # Required. The human-readable name of the parameter, unique within the form.
2799
+ # Corresponds to the JSON property `displayName`
2800
+ # @return [String]
2801
+ attr_accessor :display_name
2802
+
2803
+ # Required. The entity type of the parameter. Format: `projects/-/locations/-/
2804
+ # agents/-/entityTypes/` for system entity types (for example, `projects/-/
2805
+ # locations/-/agents/-/entityTypes/sys.date`), or `projects//locations//agents//
2806
+ # entityTypes/` for developer entity types.
2807
+ # Corresponds to the JSON property `entityType`
2808
+ # @return [String]
2809
+ attr_accessor :entity_type
2810
+
2811
+ # Configuration for how the filling of a parameter should be handled.
2812
+ # Corresponds to the JSON property `fillBehavior`
2813
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior]
2814
+ attr_accessor :fill_behavior
2815
+
2816
+ # Indicates whether the parameter represents a list of values.
2817
+ # Corresponds to the JSON property `isList`
2818
+ # @return [Boolean]
2819
+ attr_accessor :is_list
2820
+ alias_method :is_list?, :is_list
2821
+
2822
+ # Indicates whether the parameter content is logged in text and audio. If it is
2823
+ # set to true, the parameter content will be replaced to parameter name in both
2824
+ # request and response. The default value is false.
2825
+ # Corresponds to the JSON property `redact`
2826
+ # @return [Boolean]
2827
+ attr_accessor :redact
2828
+ alias_method :redact?, :redact
2829
+
2830
+ # Indicates whether the parameter is required. Optional parameters will not
2831
+ # trigger prompts; however, they are filled if the user specifies them. Required
2832
+ # parameters must be filled before form filling concludes.
2833
+ # Corresponds to the JSON property `required`
2834
+ # @return [Boolean]
2835
+ attr_accessor :required
2836
+ alias_method :required?, :required
2837
+
2838
+ def initialize(**args)
2839
+ update!(**args)
2840
+ end
2841
+
2842
+ # Update properties of this object
2843
+ def update!(**args)
2844
+ @default_value = args[:default_value] if args.key?(:default_value)
2845
+ @display_name = args[:display_name] if args.key?(:display_name)
2846
+ @entity_type = args[:entity_type] if args.key?(:entity_type)
2847
+ @fill_behavior = args[:fill_behavior] if args.key?(:fill_behavior)
2848
+ @is_list = args[:is_list] if args.key?(:is_list)
2849
+ @redact = args[:redact] if args.key?(:redact)
2850
+ @required = args[:required] if args.key?(:required)
2851
+ end
2852
+ end
2853
+
2854
+ # Configuration for how the filling of a parameter should be handled.
2855
+ class GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
2856
+ include Google::Apis::Core::Hashable
2857
+
2858
+ # A fulfillment can do one or more of the following actions at the same time: *
2859
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
2860
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
2861
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
2862
+ # the page's entry fulfillment can add a static response to the QueryResult in
2863
+ # the returning DetectIntentResponse, call the webhook (for example, to load
2864
+ # user data from a database), or both.
2865
+ # Corresponds to the JSON property `initialPromptFulfillment`
2866
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Fulfillment]
2867
+ attr_accessor :initial_prompt_fulfillment
2868
+
2869
+ # The handlers for parameter-level events, used to provide reprompt for the
2870
+ # parameter or transition to a different page/flow. The supported events are: * `
2871
+ # sys.no-match-`, where N can be from 1 to 6 * `sys.no-match-default` * `sys.no-
2872
+ # input-`, where N can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-
2873
+ # parameter` `initial_prompt_fulfillment` provides the first prompt for the
2874
+ # parameter. If the user's response does not fill the parameter, a no-match/no-
2875
+ # input event will be triggered, and the fulfillment associated with the `sys.no-
2876
+ # match-1`/`sys.no-input-1` handler (if defined) will be called to provide a
2877
+ # prompt. The `sys.no-match-2`/`sys.no-input-2` handler (if defined) will
2878
+ # respond to the next no-match/no-input event, and so on. A `sys.no-match-
2879
+ # default` or `sys.no-input-default` handler will be used to handle all
2880
+ # following no-match/no-input events after all numbered no-match/no-input
2881
+ # handlers for the parameter are consumed. A `sys.invalid-parameter` handler can
2882
+ # be defined to handle the case where the parameter values have been `
2883
+ # invalidated` by webhook. For example, if the user's response fill the
2884
+ # parameter, however the parameter was invalidated by webhook, the fulfillment
2885
+ # associated with the `sys.invalid-parameter` handler (if defined) will be
2886
+ # called to provide a prompt. If the event handler for the corresponding event
2887
+ # can't be found on the parameter, `initial_prompt_fulfillment` will be re-
2888
+ # prompted.
2889
+ # Corresponds to the JSON property `repromptEventHandlers`
2890
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1EventHandler>]
2891
+ attr_accessor :reprompt_event_handlers
2892
+
2893
+ def initialize(**args)
2894
+ update!(**args)
2895
+ end
2896
+
2897
+ # Update properties of this object
2898
+ def update!(**args)
2899
+ @initial_prompt_fulfillment = args[:initial_prompt_fulfillment] if args.key?(:initial_prompt_fulfillment)
2900
+ @reprompt_event_handlers = args[:reprompt_event_handlers] if args.key?(:reprompt_event_handlers)
2901
+ end
2902
+ end
2903
+
2904
+ # A fulfillment can do one or more of the following actions at the same time: *
2905
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
2906
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
2907
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
2908
+ # the page's entry fulfillment can add a static response to the QueryResult in
2909
+ # the returning DetectIntentResponse, call the webhook (for example, to load
2910
+ # user data from a database), or both.
2911
+ class GoogleCloudDialogflowCxV3beta1Fulfillment
2912
+ include Google::Apis::Core::Hashable
2913
+
2914
+ # Conditional cases for this fulfillment.
2915
+ # Corresponds to the JSON property `conditionalCases`
2916
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases>]
2917
+ attr_accessor :conditional_cases
2918
+
2919
+ # The list of rich message responses to present to the user.
2920
+ # Corresponds to the JSON property `messages`
2921
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessage>]
2922
+ attr_accessor :messages
2923
+
2924
+ # Set parameter values before executing the webhook.
2925
+ # Corresponds to the JSON property `setParameterActions`
2926
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction>]
2927
+ attr_accessor :set_parameter_actions
2928
+
2929
+ # The tag used by the webhook to identify which fulfillment is being called.
2930
+ # This field is required if `webhook` is specified.
2931
+ # Corresponds to the JSON property `tag`
2932
+ # @return [String]
2933
+ attr_accessor :tag
2934
+
2935
+ # The webhook to call. Format: `projects//locations//agents//webhooks/`.
2936
+ # Corresponds to the JSON property `webhook`
2937
+ # @return [String]
2938
+ attr_accessor :webhook
2939
+
2940
+ def initialize(**args)
2941
+ update!(**args)
2942
+ end
2943
+
2944
+ # Update properties of this object
2945
+ def update!(**args)
2946
+ @conditional_cases = args[:conditional_cases] if args.key?(:conditional_cases)
2947
+ @messages = args[:messages] if args.key?(:messages)
2948
+ @set_parameter_actions = args[:set_parameter_actions] if args.key?(:set_parameter_actions)
2949
+ @tag = args[:tag] if args.key?(:tag)
2950
+ @webhook = args[:webhook] if args.key?(:webhook)
2951
+ end
2952
+ end
2953
+
2954
+ # A list of cascading if-else conditions. Cases are mutually exclusive. The
2955
+ # first one with a matching condition is selected, all the rest ignored.
2956
+ class GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
2957
+ include Google::Apis::Core::Hashable
2958
+
2959
+ # A list of cascading if-else conditions.
2960
+ # Corresponds to the JSON property `cases`
2961
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase>]
2962
+ attr_accessor :cases
2963
+
2964
+ def initialize(**args)
2965
+ update!(**args)
2966
+ end
2967
+
2968
+ # Update properties of this object
2969
+ def update!(**args)
2970
+ @cases = args[:cases] if args.key?(:cases)
2971
+ end
2972
+ end
2973
+
2974
+ # Each case has a Boolean condition. When it is evaluated to be True, the
2975
+ # corresponding messages will be selected and evaluated recursively.
2976
+ class GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
2977
+ include Google::Apis::Core::Hashable
2978
+
2979
+ # A list of case content.
2980
+ # Corresponds to the JSON property `caseContent`
2981
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent>]
2982
+ attr_accessor :case_content
2983
+
2984
+ # The condition to activate and select this case. Empty means the condition is
2985
+ # always true. The condition is evaluated against form parameters or session
2986
+ # parameters. See the [conditions reference](https://cloud.google.com/dialogflow/
2987
+ # cx/docs/reference/condition).
2988
+ # Corresponds to the JSON property `condition`
2989
+ # @return [String]
2990
+ attr_accessor :condition
2991
+
2992
+ def initialize(**args)
2993
+ update!(**args)
2994
+ end
2995
+
2996
+ # Update properties of this object
2997
+ def update!(**args)
2998
+ @case_content = args[:case_content] if args.key?(:case_content)
2999
+ @condition = args[:condition] if args.key?(:condition)
3000
+ end
3001
+ end
3002
+
3003
+ # The list of messages or conditional cases to activate for this case.
3004
+ class GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
3005
+ include Google::Apis::Core::Hashable
3006
+
3007
+ # A list of cascading if-else conditions. Cases are mutually exclusive. The
3008
+ # first one with a matching condition is selected, all the rest ignored.
3009
+ # Corresponds to the JSON property `additionalCases`
3010
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases]
3011
+ attr_accessor :additional_cases
3012
+
3013
+ # Represents a response message that can be returned by a conversational agent.
3014
+ # Response messages are also used for output audio synthesis. The approach is as
3015
+ # follows: * If at least one OutputAudioText response is present, then all
3016
+ # OutputAudioText responses are linearly concatenated, and the result is used
3017
+ # for output audio synthesis. * If the OutputAudioText responses are a mixture
3018
+ # of text and SSML, then the concatenated result is treated as SSML; otherwise,
3019
+ # the result is treated as either text or SSML as appropriate. The agent
3020
+ # designer should ideally use either text or SSML consistently throughout the
3021
+ # bot design. * Otherwise, all Text responses are linearly concatenated, and the
3022
+ # result is used for output audio synthesis. This approach allows for more
3023
+ # sophisticated user experience scenarios, where the text displayed to the user
3024
+ # may differ from what is heard.
3025
+ # Corresponds to the JSON property `message`
3026
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessage]
3027
+ attr_accessor :message
3028
+
3029
+ def initialize(**args)
3030
+ update!(**args)
3031
+ end
3032
+
3033
+ # Update properties of this object
3034
+ def update!(**args)
3035
+ @additional_cases = args[:additional_cases] if args.key?(:additional_cases)
3036
+ @message = args[:message] if args.key?(:message)
3037
+ end
3038
+ end
3039
+
3040
+ # Setting a parameter value.
3041
+ class GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
3042
+ include Google::Apis::Core::Hashable
3043
+
3044
+ # Display name of the parameter.
3045
+ # Corresponds to the JSON property `parameter`
3046
+ # @return [String]
3047
+ attr_accessor :parameter
3048
+
3049
+ # The new value of the parameter. A null value clears the parameter.
3050
+ # Corresponds to the JSON property `value`
3051
+ # @return [Object]
3052
+ attr_accessor :value
3053
+
3054
+ def initialize(**args)
3055
+ update!(**args)
3056
+ end
3057
+
3058
+ # Update properties of this object
3059
+ def update!(**args)
3060
+ @parameter = args[:parameter] if args.key?(:parameter)
3061
+ @value = args[:value] if args.key?(:value)
3062
+ end
3063
+ end
3064
+
3065
+ # Metadata in google::longrunning::Operation for Knowledge operations.
3066
+ class GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata
3067
+ include Google::Apis::Core::Hashable
3068
+
3069
+ # Required. Output only. The current state of this operation.
3070
+ # Corresponds to the JSON property `state`
3071
+ # @return [String]
3072
+ attr_accessor :state
3073
+
3074
+ def initialize(**args)
3075
+ update!(**args)
3076
+ end
3077
+
3078
+ # Update properties of this object
3079
+ def update!(**args)
3080
+ @state = args[:state] if args.key?(:state)
3081
+ end
3082
+ end
3083
+
3084
+ # Metadata for ImportDocuments operation.
3085
+ class GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata
3086
+ include Google::Apis::Core::Hashable
3087
+
3088
+ # Metadata in google::longrunning::Operation for Knowledge operations.
3089
+ # Corresponds to the JSON property `genericMetadata`
3090
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata]
3091
+ attr_accessor :generic_metadata
3092
+
3093
+ def initialize(**args)
3094
+ update!(**args)
3095
+ end
3096
+
3097
+ # Update properties of this object
3098
+ def update!(**args)
3099
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
3100
+ end
3101
+ end
3102
+
3103
+ # Response message for Documents.ImportDocuments.
3104
+ class GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse
3105
+ include Google::Apis::Core::Hashable
3106
+
3107
+ # Includes details about skipped documents or any other warnings.
3108
+ # Corresponds to the JSON property `warnings`
3109
+ # @return [Array<Google::Apis::DialogflowV2::GoogleRpcStatus>]
3110
+ attr_accessor :warnings
3111
+
3112
+ def initialize(**args)
3113
+ update!(**args)
3114
+ end
3115
+
3116
+ # Update properties of this object
3117
+ def update!(**args)
3118
+ @warnings = args[:warnings] if args.key?(:warnings)
3119
+ end
3120
+ end
3121
+
3122
+ # Metadata returned for the TestCases.ImportTestCases long running operation.
3123
+ class GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
3124
+ include Google::Apis::Core::Hashable
3125
+
3126
+ # Errors for failed test cases.
3127
+ # Corresponds to the JSON property `errors`
3128
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestCaseError>]
3129
+ attr_accessor :errors
3130
+
3131
+ def initialize(**args)
3132
+ update!(**args)
3133
+ end
3134
+
3135
+ # Update properties of this object
3136
+ def update!(**args)
3137
+ @errors = args[:errors] if args.key?(:errors)
3138
+ end
3139
+ end
3140
+
3141
+ # The response message for TestCases.ImportTestCases.
3142
+ class GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
3143
+ include Google::Apis::Core::Hashable
3144
+
3145
+ # The unique identifiers of the new test cases. Format: `projects//locations//
3146
+ # agents//testCases/`.
3147
+ # Corresponds to the JSON property `names`
3148
+ # @return [Array<String>]
3149
+ attr_accessor :names
3150
+
3151
+ def initialize(**args)
3152
+ update!(**args)
3153
+ end
3154
+
3155
+ # Update properties of this object
3156
+ def update!(**args)
3157
+ @names = args[:names] if args.key?(:names)
3158
+ end
3159
+ end
3160
+
3161
+ # Instructs the speech recognizer on how to process the audio content.
3162
+ class GoogleCloudDialogflowCxV3beta1InputAudioConfig
3163
+ include Google::Apis::Core::Hashable
3164
+
3165
+ # Required. Audio encoding of the audio content to process.
3166
+ # Corresponds to the JSON property `audioEncoding`
3167
+ # @return [String]
3168
+ attr_accessor :audio_encoding
3169
+
3170
+ # Optional. If `true`, Dialogflow returns SpeechWordInfo in
3171
+ # StreamingRecognitionResult with information about the recognized speech words,
3172
+ # e.g. start and end time offsets. If false or unspecified, Speech doesn't
3173
+ # return any word-level information.
3174
+ # Corresponds to the JSON property `enableWordInfo`
3175
+ # @return [Boolean]
3176
+ attr_accessor :enable_word_info
3177
+ alias_method :enable_word_info?, :enable_word_info
3178
+
3179
+ # Optional. Which Speech model to select for the given request. Select the model
3180
+ # best suited to your domain to get best results. If a model is not explicitly
3181
+ # specified, then we auto-select a model based on the parameters in the
3182
+ # InputAudioConfig. If enhanced speech model is enabled for the agent and an
3183
+ # enhanced version of the specified model for the language does not exist, then
3184
+ # the speech is recognized using the standard version of the specified model.
3185
+ # Refer to [Cloud Speech API documentation](https://cloud.google.com/speech-to-
3186
+ # text/docs/basics#select-model) for more details.
3187
+ # Corresponds to the JSON property `model`
3188
+ # @return [String]
3189
+ attr_accessor :model
3190
+
3191
+ # Optional. Which variant of the Speech model to use.
3192
+ # Corresponds to the JSON property `modelVariant`
3193
+ # @return [String]
3194
+ attr_accessor :model_variant
3195
+
3196
+ # Optional. A list of strings containing words and phrases that the speech
3197
+ # recognizer should recognize with higher likelihood. See [the Cloud Speech
3198
+ # documentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-
3199
+ # hints) for more details.
3200
+ # Corresponds to the JSON property `phraseHints`
3201
+ # @return [Array<String>]
3202
+ attr_accessor :phrase_hints
3203
+
3204
+ # Sample rate (in Hertz) of the audio content sent in the query. Refer to [Cloud
3205
+ # Speech API documentation](https://cloud.google.com/speech-to-text/docs/basics)
3206
+ # for more details.
3207
+ # Corresponds to the JSON property `sampleRateHertz`
3208
+ # @return [Fixnum]
3209
+ attr_accessor :sample_rate_hertz
3210
+
3211
+ # Optional. If `false` (default), recognition does not cease until the client
3212
+ # closes the stream. If `true`, the recognizer will detect a single spoken
3213
+ # utterance in input audio. Recognition ceases when it detects the audio's voice
3214
+ # has stopped or paused. In this case, once a detected intent is received, the
3215
+ # client should close the stream and start a new request with a new stream as
3216
+ # needed. Note: This setting is relevant only for streaming methods.
3217
+ # Corresponds to the JSON property `singleUtterance`
3218
+ # @return [Boolean]
3219
+ attr_accessor :single_utterance
3220
+ alias_method :single_utterance?, :single_utterance
3221
+
3222
+ def initialize(**args)
3223
+ update!(**args)
3224
+ end
3225
+
3226
+ # Update properties of this object
3227
+ def update!(**args)
3228
+ @audio_encoding = args[:audio_encoding] if args.key?(:audio_encoding)
3229
+ @enable_word_info = args[:enable_word_info] if args.key?(:enable_word_info)
3230
+ @model = args[:model] if args.key?(:model)
3231
+ @model_variant = args[:model_variant] if args.key?(:model_variant)
3232
+ @phrase_hints = args[:phrase_hints] if args.key?(:phrase_hints)
3233
+ @sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz)
3234
+ @single_utterance = args[:single_utterance] if args.key?(:single_utterance)
3235
+ end
3236
+ end
3237
+
3238
+ # An intent represents a user's intent to interact with a conversational agent.
3239
+ # You can provide information for the Dialogflow API to use to match user input
3240
+ # to an intent by adding training phrases (i.e., examples of user input) to your
3241
+ # intent.
3242
+ class GoogleCloudDialogflowCxV3beta1Intent
3243
+ include Google::Apis::Core::Hashable
3244
+
3245
+ # Optional. Human readable description for better understanding an intent like
3246
+ # its scope, content, result etc. Maximum character limit: 140 characters.
3247
+ # Corresponds to the JSON property `description`
3248
+ # @return [String]
3249
+ attr_accessor :description
3250
+
3251
+ # Required. The human-readable name of the intent, unique within the agent.
3252
+ # Corresponds to the JSON property `displayName`
3253
+ # @return [String]
3254
+ attr_accessor :display_name
3255
+
3256
+ # Indicates whether this is a fallback intent. Currently only default fallback
3257
+ # intent is allowed in the agent, which is added upon agent creation. Adding
3258
+ # training phrases to fallback intent is useful in the case of requests that are
3259
+ # mistakenly matched, since training phrases assigned to fallback intents act as
3260
+ # negative examples that triggers no-match event.
3261
+ # Corresponds to the JSON property `isFallback`
3262
+ # @return [Boolean]
3263
+ attr_accessor :is_fallback
3264
+ alias_method :is_fallback?, :is_fallback
3265
+
3266
+ # Optional. The key/value metadata to label an intent. Labels can contain
3267
+ # lowercase letters, digits and the symbols '-' and '_'. International
3268
+ # characters are allowed, including letters from unicase alphabets. Keys must
3269
+ # start with a letter. Keys and values can be no longer than 63 characters and
3270
+ # no more than 128 bytes. Prefix "sys-" is reserved for Dialogflow defined
3271
+ # labels. Currently allowed Dialogflow defined labels include: * sys-head * sys-
3272
+ # contextual The above labels do not require value. "sys-head" means the intent
3273
+ # is a head intent. "sys-contextual" means the intent is a contextual intent.
3274
+ # Corresponds to the JSON property `labels`
3275
+ # @return [Hash<String,String>]
3276
+ attr_accessor :labels
3277
+
3278
+ # The unique identifier of the intent. Required for the Intents.UpdateIntent
3279
+ # method. Intents.CreateIntent populates the name automatically. Format: `
3280
+ # projects//locations//agents//intents/`.
3281
+ # Corresponds to the JSON property `name`
3282
+ # @return [String]
3283
+ attr_accessor :name
3284
+
3285
+ # The collection of parameters associated with the intent.
3286
+ # Corresponds to the JSON property `parameters`
3287
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1IntentParameter>]
3288
+ attr_accessor :parameters
3289
+
3290
+ # The priority of this intent. Higher numbers represent higher priorities. - If
3291
+ # the supplied value is unspecified or 0, the service translates the value to
3292
+ # 500,000, which corresponds to the `Normal` priority in the console. - If the
3293
+ # supplied value is negative, the intent is ignored in runtime detect intent
3294
+ # requests.
3295
+ # Corresponds to the JSON property `priority`
3296
+ # @return [Fixnum]
3297
+ attr_accessor :priority
3298
+
3299
+ # The collection of training phrases the agent is trained on to identify the
3300
+ # intent.
3301
+ # Corresponds to the JSON property `trainingPhrases`
3302
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase>]
3303
+ attr_accessor :training_phrases
3304
+
3305
+ def initialize(**args)
3306
+ update!(**args)
3307
+ end
3308
+
3309
+ # Update properties of this object
3310
+ def update!(**args)
3311
+ @description = args[:description] if args.key?(:description)
3312
+ @display_name = args[:display_name] if args.key?(:display_name)
3313
+ @is_fallback = args[:is_fallback] if args.key?(:is_fallback)
3314
+ @labels = args[:labels] if args.key?(:labels)
3315
+ @name = args[:name] if args.key?(:name)
3316
+ @parameters = args[:parameters] if args.key?(:parameters)
3317
+ @priority = args[:priority] if args.key?(:priority)
3318
+ @training_phrases = args[:training_phrases] if args.key?(:training_phrases)
3319
+ end
3320
+ end
3321
+
3322
+ # Represents the intent to trigger programmatically rather than as a result of
3323
+ # natural language processing.
3324
+ class GoogleCloudDialogflowCxV3beta1IntentInput
3325
+ include Google::Apis::Core::Hashable
3326
+
3327
+ # Required. The unique identifier of the intent. Format: `projects//locations//
3328
+ # agents//intents/`.
3329
+ # Corresponds to the JSON property `intent`
3330
+ # @return [String]
3331
+ attr_accessor :intent
3332
+
3333
+ def initialize(**args)
3334
+ update!(**args)
3335
+ end
3336
+
3337
+ # Update properties of this object
3338
+ def update!(**args)
3339
+ @intent = args[:intent] if args.key?(:intent)
3340
+ end
3341
+ end
3342
+
3343
+ # Represents an intent parameter.
3344
+ class GoogleCloudDialogflowCxV3beta1IntentParameter
3345
+ include Google::Apis::Core::Hashable
3346
+
3347
+ # Required. The entity type of the parameter. Format: `projects/-/locations/-/
3348
+ # agents/-/entityTypes/` for system entity types (for example, `projects/-/
3349
+ # locations/-/agents/-/entityTypes/sys.date`), or `projects//locations//agents//
3350
+ # entityTypes/` for developer entity types.
3351
+ # Corresponds to the JSON property `entityType`
3352
+ # @return [String]
3353
+ attr_accessor :entity_type
3354
+
3355
+ # Required. The unique identifier of the parameter. This field is used by
3356
+ # training phrases to annotate their parts.
3357
+ # Corresponds to the JSON property `id`
3358
+ # @return [String]
3359
+ attr_accessor :id
3360
+
3361
+ # Indicates whether the parameter represents a list of values.
3362
+ # Corresponds to the JSON property `isList`
3363
+ # @return [Boolean]
3364
+ attr_accessor :is_list
3365
+ alias_method :is_list?, :is_list
3366
+
3367
+ # Indicates whether the parameter content is logged in text and audio. If it is
3368
+ # set to true, the parameter content will be replaced to parameter id in both
3369
+ # request and response. The default value is false.
3370
+ # Corresponds to the JSON property `redact`
3371
+ # @return [Boolean]
3372
+ attr_accessor :redact
3373
+ alias_method :redact?, :redact
3374
+
3375
+ def initialize(**args)
3376
+ update!(**args)
3377
+ end
3378
+
3379
+ # Update properties of this object
3380
+ def update!(**args)
3381
+ @entity_type = args[:entity_type] if args.key?(:entity_type)
3382
+ @id = args[:id] if args.key?(:id)
3383
+ @is_list = args[:is_list] if args.key?(:is_list)
3384
+ @redact = args[:redact] if args.key?(:redact)
3385
+ end
3386
+ end
3387
+
3388
+ # Represents an example that the agent is trained on to identify the intent.
3389
+ class GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
3390
+ include Google::Apis::Core::Hashable
3391
+
3392
+ # Output only. The unique identifier of the training phrase.
3393
+ # Corresponds to the JSON property `id`
3394
+ # @return [String]
3395
+ attr_accessor :id
3396
+
3397
+ # Required. The ordered list of training phrase parts. The parts are
3398
+ # concatenated in order to form the training phrase. Note: The API does not
3399
+ # automatically annotate training phrases like the Dialogflow Console does. Note:
3400
+ # Do not forget to include whitespace at part boundaries, so the training
3401
+ # phrase is well formatted when the parts are concatenated. If the training
3402
+ # phrase does not need to be annotated with parameters, you just need a single
3403
+ # part with only the Part.text field set. If you want to annotate the training
3404
+ # phrase, you must create multiple parts, where the fields of each part are
3405
+ # populated in one of two ways: - `Part.text` is set to a part of the phrase
3406
+ # that has no parameters. - `Part.text` is set to a part of the phrase that you
3407
+ # want to annotate, and the `parameter_id` field is set.
3408
+ # Corresponds to the JSON property `parts`
3409
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart>]
3410
+ attr_accessor :parts
3411
+
3412
+ # Indicates how many times this example was added to the intent.
3413
+ # Corresponds to the JSON property `repeatCount`
3414
+ # @return [Fixnum]
3415
+ attr_accessor :repeat_count
3416
+
3417
+ def initialize(**args)
3418
+ update!(**args)
3419
+ end
3420
+
3421
+ # Update properties of this object
3422
+ def update!(**args)
3423
+ @id = args[:id] if args.key?(:id)
3424
+ @parts = args[:parts] if args.key?(:parts)
3425
+ @repeat_count = args[:repeat_count] if args.key?(:repeat_count)
3426
+ end
3427
+ end
3428
+
3429
+ # Represents a part of a training phrase.
3430
+ class GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
3431
+ include Google::Apis::Core::Hashable
3432
+
3433
+ # The parameter used to annotate this part of the training phrase. This field is
3434
+ # required for annotated parts of the training phrase.
3435
+ # Corresponds to the JSON property `parameterId`
3436
+ # @return [String]
3437
+ attr_accessor :parameter_id
3438
+
3439
+ # Required. The text for this part.
3440
+ # Corresponds to the JSON property `text`
3441
+ # @return [String]
3442
+ attr_accessor :text
3443
+
3444
+ def initialize(**args)
3445
+ update!(**args)
3446
+ end
3447
+
3448
+ # Update properties of this object
3449
+ def update!(**args)
3450
+ @parameter_id = args[:parameter_id] if args.key?(:parameter_id)
3451
+ @text = args[:text] if args.key?(:text)
3452
+ end
3453
+ end
3454
+
3455
+ # A Dialogflow CX conversation (session) can be described and visualized as a
3456
+ # state machine. The states of a CX session are represented by pages. For each
3457
+ # flow, you define many pages, where your combined pages can handle a complete
3458
+ # conversation on the topics the flow is designed for. At any given moment,
3459
+ # exactly one page is the current page, the current page is considered active,
3460
+ # and the flow associated with that page is considered active. Every flow has a
3461
+ # special start page. When a flow initially becomes active, the start page page
3462
+ # becomes the current page. For each conversational turn, the current page will
3463
+ # either stay the same or transition to another page. You configure each page to
3464
+ # collect information from the end-user that is relevant for the conversational
3465
+ # state represented by the page. For more information, see the [Page guide](
3466
+ # https://cloud.google.com/dialogflow/cx/docs/concept/page).
3467
+ class GoogleCloudDialogflowCxV3beta1Page
3468
+ include Google::Apis::Core::Hashable
3469
+
3470
+ # Required. The human-readable name of the page, unique within the agent.
3471
+ # Corresponds to the JSON property `displayName`
3472
+ # @return [String]
3473
+ attr_accessor :display_name
3474
+
3475
+ # A fulfillment can do one or more of the following actions at the same time: *
3476
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
3477
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
3478
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
3479
+ # the page's entry fulfillment can add a static response to the QueryResult in
3480
+ # the returning DetectIntentResponse, call the webhook (for example, to load
3481
+ # user data from a database), or both.
3482
+ # Corresponds to the JSON property `entryFulfillment`
3483
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Fulfillment]
3484
+ attr_accessor :entry_fulfillment
3485
+
3486
+ # Handlers associated with the page to handle events such as webhook errors, no
3487
+ # match or no input.
3488
+ # Corresponds to the JSON property `eventHandlers`
3489
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1EventHandler>]
3490
+ attr_accessor :event_handlers
3491
+
3492
+ # A form is a data model that groups related parameters that can be collected
3493
+ # from the user. The process in which the agent prompts the user and collects
3494
+ # parameter values from the user is called form filling. A form can be added to
3495
+ # a page. When form filling is done, the filled parameters will be written to
3496
+ # the session.
3497
+ # Corresponds to the JSON property `form`
3498
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Form]
3499
+ attr_accessor :form
3500
+
3501
+ # The unique identifier of the page. Required for the Pages.UpdatePage method.
3502
+ # Pages.CreatePage populates the name automatically. Format: `projects//
3503
+ # locations//agents//flows//pages/`.
3504
+ # Corresponds to the JSON property `name`
3505
+ # @return [String]
3506
+ attr_accessor :name
3507
+
3508
+ # Ordered list of `TransitionRouteGroups` associated with the page. Transition
3509
+ # route groups must be unique within a page. * If multiple transition routes
3510
+ # within a page scope refer to the same intent, then the precedence order is:
3511
+ # page's transition route -> page's transition route group -> flow's transition
3512
+ # routes. * If multiple transition route groups within a page contain the same
3513
+ # intent, then the first group in the ordered list takes precedence. Format:`
3514
+ # projects//locations//agents//flows//transitionRouteGroups/`.
3515
+ # Corresponds to the JSON property `transitionRouteGroups`
3516
+ # @return [Array<String>]
3517
+ attr_accessor :transition_route_groups
3518
+
3519
+ # A list of transitions for the transition rules of this page. They route the
3520
+ # conversation to another page in the same flow, or another flow. When we are in
3521
+ # a certain page, the TransitionRoutes are evalauted in the following order: *
3522
+ # TransitionRoutes defined in the page with intent specified. * TransitionRoutes
3523
+ # defined in the transition route groups. * TransitionRoutes defined in flow
3524
+ # with intent specified. * TransitionRoutes defined in the page with only
3525
+ # condition specified.
3526
+ # Corresponds to the JSON property `transitionRoutes`
3527
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TransitionRoute>]
3528
+ attr_accessor :transition_routes
3529
+
3530
+ def initialize(**args)
3531
+ update!(**args)
3532
+ end
3533
+
3534
+ # Update properties of this object
3535
+ def update!(**args)
3536
+ @display_name = args[:display_name] if args.key?(:display_name)
3537
+ @entry_fulfillment = args[:entry_fulfillment] if args.key?(:entry_fulfillment)
3538
+ @event_handlers = args[:event_handlers] if args.key?(:event_handlers)
3539
+ @form = args[:form] if args.key?(:form)
3540
+ @name = args[:name] if args.key?(:name)
3541
+ @transition_route_groups = args[:transition_route_groups] if args.key?(:transition_route_groups)
3542
+ @transition_routes = args[:transition_routes] if args.key?(:transition_routes)
3543
+ end
3544
+ end
3545
+
3546
+ # Represents page information communicated to and from the webhook.
3547
+ class GoogleCloudDialogflowCxV3beta1PageInfo
3548
+ include Google::Apis::Core::Hashable
3549
+
3550
+ # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
3551
+ # identifier of the current page. Format: `projects//locations//agents//flows//
3552
+ # pages/`.
3553
+ # Corresponds to the JSON property `currentPage`
3554
+ # @return [String]
3555
+ attr_accessor :current_page
3556
+
3557
+ # Represents form information.
3558
+ # Corresponds to the JSON property `formInfo`
3559
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1PageInfoFormInfo]
3560
+ attr_accessor :form_info
3561
+
3562
+ def initialize(**args)
3563
+ update!(**args)
3564
+ end
3565
+
3566
+ # Update properties of this object
3567
+ def update!(**args)
3568
+ @current_page = args[:current_page] if args.key?(:current_page)
3569
+ @form_info = args[:form_info] if args.key?(:form_info)
3570
+ end
3571
+ end
3572
+
3573
+ # Represents form information.
3574
+ class GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
3575
+ include Google::Apis::Core::Hashable
3576
+
3577
+ # Optional for both WebhookRequest and WebhookResponse. The parameters contained
3578
+ # in the form. Note that the webhook cannot add or remove any form parameter.
3579
+ # Corresponds to the JSON property `parameterInfo`
3580
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo>]
3581
+ attr_accessor :parameter_info
3582
+
3583
+ def initialize(**args)
3584
+ update!(**args)
3585
+ end
3586
+
3587
+ # Update properties of this object
3588
+ def update!(**args)
3589
+ @parameter_info = args[:parameter_info] if args.key?(:parameter_info)
3590
+ end
3591
+ end
3592
+
3593
+ # Represents parameter information.
3594
+ class GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
3595
+ include Google::Apis::Core::Hashable
3596
+
3597
+ # Always present for WebhookRequest. Required for WebhookResponse. The human-
3598
+ # readable name of the parameter, unique within the form. This field cannot be
3599
+ # modified by the webhook.
3600
+ # Corresponds to the JSON property `displayName`
3601
+ # @return [String]
3602
+ attr_accessor :display_name
3603
+
3604
+ # Optional for WebhookRequest. Ignored for WebhookResponse. Indicates if the
3605
+ # parameter value was just collected on the last conversation turn.
3606
+ # Corresponds to the JSON property `justCollected`
3607
+ # @return [Boolean]
3608
+ attr_accessor :just_collected
3609
+ alias_method :just_collected?, :just_collected
3610
+
3611
+ # Optional for both WebhookRequest and WebhookResponse. Indicates whether the
3612
+ # parameter is required. Optional parameters will not trigger prompts; however,
3613
+ # they are filled if the user specifies them. Required parameters must be filled
3614
+ # before form filling concludes.
3615
+ # Corresponds to the JSON property `required`
3616
+ # @return [Boolean]
3617
+ attr_accessor :required
3618
+ alias_method :required?, :required
3619
+
3620
+ # Always present for WebhookRequest. Required for WebhookResponse. The state of
3621
+ # the parameter. This field can be set to INVALID by the webhook to invalidate
3622
+ # the parameter; other values set by the webhook will be ignored.
3623
+ # Corresponds to the JSON property `state`
3624
+ # @return [String]
3625
+ attr_accessor :state
3626
+
3627
+ # Optional for both WebhookRequest and WebhookResponse. The value of the
3628
+ # parameter. This field can be set by the webhook to change the parameter value.
3629
+ # Corresponds to the JSON property `value`
3630
+ # @return [Object]
3631
+ attr_accessor :value
3632
+
3633
+ def initialize(**args)
3634
+ update!(**args)
3635
+ end
3636
+
3637
+ # Update properties of this object
3638
+ def update!(**args)
3639
+ @display_name = args[:display_name] if args.key?(:display_name)
3640
+ @just_collected = args[:just_collected] if args.key?(:just_collected)
3641
+ @required = args[:required] if args.key?(:required)
3642
+ @state = args[:state] if args.key?(:state)
3643
+ @value = args[:value] if args.key?(:value)
3644
+ end
3645
+ end
3646
+
3647
+ # Represents the query input. It can contain one of: 1. A conversational query
3648
+ # in the form of text. 2. An intent query that specifies which intent to trigger.
3649
+ # 3. Natural language speech audio to be processed. 4. An event to be triggered.
3650
+ #
3651
+ class GoogleCloudDialogflowCxV3beta1QueryInput
3652
+ include Google::Apis::Core::Hashable
3653
+
3654
+ # Represents the natural speech audio to be processed.
3655
+ # Corresponds to the JSON property `audio`
3656
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1AudioInput]
3657
+ attr_accessor :audio
3658
+
3659
+ # Represents the input for dtmf event.
3660
+ # Corresponds to the JSON property `dtmf`
3661
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1DtmfInput]
3662
+ attr_accessor :dtmf
3663
+
3664
+ # Represents the event to trigger.
3665
+ # Corresponds to the JSON property `event`
3666
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1EventInput]
3667
+ attr_accessor :event
3668
+
3669
+ # Represents the intent to trigger programmatically rather than as a result of
3670
+ # natural language processing.
3671
+ # Corresponds to the JSON property `intent`
3672
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1IntentInput]
3673
+ attr_accessor :intent
3674
+
3675
+ # Required. The language of the input. See [Language Support](https://cloud.
3676
+ # google.com/dialogflow/docs/reference/language) for a list of the currently
3677
+ # supported language codes. Note that queries in the same session do not
3678
+ # necessarily need to specify the same language.
3679
+ # Corresponds to the JSON property `languageCode`
3680
+ # @return [String]
3681
+ attr_accessor :language_code
3682
+
3683
+ # Represents the natural language text to be processed.
3684
+ # Corresponds to the JSON property `text`
3685
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TextInput]
3686
+ attr_accessor :text
3687
+
3688
+ def initialize(**args)
3689
+ update!(**args)
3690
+ end
3691
+
3692
+ # Update properties of this object
3693
+ def update!(**args)
3694
+ @audio = args[:audio] if args.key?(:audio)
3695
+ @dtmf = args[:dtmf] if args.key?(:dtmf)
3696
+ @event = args[:event] if args.key?(:event)
3697
+ @intent = args[:intent] if args.key?(:intent)
3698
+ @language_code = args[:language_code] if args.key?(:language_code)
3699
+ @text = args[:text] if args.key?(:text)
3700
+ end
3701
+ end
3702
+
3703
+ # Metadata for ReloadDocument operation.
3704
+ class GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata
3705
+ include Google::Apis::Core::Hashable
3706
+
3707
+ # Metadata in google::longrunning::Operation for Knowledge operations.
3708
+ # Corresponds to the JSON property `genericMetadata`
3709
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata]
3710
+ attr_accessor :generic_metadata
3711
+
3712
+ def initialize(**args)
3713
+ update!(**args)
3714
+ end
3715
+
3716
+ # Update properties of this object
3717
+ def update!(**args)
3718
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
3719
+ end
3720
+ end
3721
+
3722
+ # Represents a response message that can be returned by a conversational agent.
3723
+ # Response messages are also used for output audio synthesis. The approach is as
3724
+ # follows: * If at least one OutputAudioText response is present, then all
3725
+ # OutputAudioText responses are linearly concatenated, and the result is used
3726
+ # for output audio synthesis. * If the OutputAudioText responses are a mixture
3727
+ # of text and SSML, then the concatenated result is treated as SSML; otherwise,
3728
+ # the result is treated as either text or SSML as appropriate. The agent
3729
+ # designer should ideally use either text or SSML consistently throughout the
3730
+ # bot design. * Otherwise, all Text responses are linearly concatenated, and the
3731
+ # result is used for output audio synthesis. This approach allows for more
3732
+ # sophisticated user experience scenarios, where the text displayed to the user
3733
+ # may differ from what is heard.
3734
+ class GoogleCloudDialogflowCxV3beta1ResponseMessage
3735
+ include Google::Apis::Core::Hashable
3736
+
3737
+ # Indicates that the conversation succeeded, i.e., the bot handled the issue
3738
+ # that the customer talked to it about. Dialogflow only uses this to determine
3739
+ # which conversations should be counted as successful and doesn't process the
3740
+ # metadata in this message in any way. Note that Dialogflow also considers
3741
+ # conversations that get to the conversation end page as successful even if they
3742
+ # don't return ConversationSuccess. You may set this, for example: * In the
3743
+ # entry_fulfillment of a Page if entering the page indicates that the
3744
+ # conversation succeeded. * In a webhook response when you determine that you
3745
+ # handled the customer issue.
3746
+ # Corresponds to the JSON property `conversationSuccess`
3747
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess]
3748
+ attr_accessor :conversation_success
3749
+
3750
+ # Indicates that interaction with the Dialogflow agent has ended. This message
3751
+ # is generated by Dialogflow only and not supposed to be defined by the user.
3752
+ # Corresponds to the JSON property `endInteraction`
3753
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction]
3754
+ attr_accessor :end_interaction
3755
+
3756
+ # Indicates that the conversation should be handed off to a live agent.
3757
+ # Dialogflow only uses this to determine which conversations were handed off to
3758
+ # a human agent for measurement purposes. What else to do with this signal is up
3759
+ # to you and your handoff procedures. You may set this, for example: * In the
3760
+ # entry_fulfillment of a Page if entering the page indicates something went
3761
+ # extremely wrong in the conversation. * In a webhook response when you
3762
+ # determine that the customer issue can only be handled by a human.
3763
+ # Corresponds to the JSON property `liveAgentHandoff`
3764
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff]
3765
+ attr_accessor :live_agent_handoff
3766
+
3767
+ # Represents an audio message that is composed of both segments synthesized from
3768
+ # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
3769
+ # The external URIs are specified via play_audio. This message is generated by
3770
+ # Dialogflow only and not supposed to be defined by the user.
3771
+ # Corresponds to the JSON property `mixedAudio`
3772
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio]
3773
+ attr_accessor :mixed_audio
3774
+
3775
+ # A text or ssml response that is preferentially used for TTS output audio
3776
+ # synthesis, as described in the comment on the ResponseMessage message.
3777
+ # Corresponds to the JSON property `outputAudioText`
3778
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText]
3779
+ attr_accessor :output_audio_text
3780
+
3781
+ # Returns a response containing a custom, platform-specific payload.
3782
+ # Corresponds to the JSON property `payload`
3783
+ # @return [Hash<String,Object>]
3784
+ attr_accessor :payload
3785
+
3786
+ # Specifies an audio clip to be played by the client as part of the response.
3787
+ # Corresponds to the JSON property `playAudio`
3788
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio]
3789
+ attr_accessor :play_audio
3790
+
3791
+ # The text response message.
3792
+ # Corresponds to the JSON property `text`
3793
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageText]
3794
+ attr_accessor :text
3795
+
3796
+ def initialize(**args)
3797
+ update!(**args)
3798
+ end
3799
+
3800
+ # Update properties of this object
3801
+ def update!(**args)
3802
+ @conversation_success = args[:conversation_success] if args.key?(:conversation_success)
3803
+ @end_interaction = args[:end_interaction] if args.key?(:end_interaction)
3804
+ @live_agent_handoff = args[:live_agent_handoff] if args.key?(:live_agent_handoff)
3805
+ @mixed_audio = args[:mixed_audio] if args.key?(:mixed_audio)
3806
+ @output_audio_text = args[:output_audio_text] if args.key?(:output_audio_text)
3807
+ @payload = args[:payload] if args.key?(:payload)
3808
+ @play_audio = args[:play_audio] if args.key?(:play_audio)
3809
+ @text = args[:text] if args.key?(:text)
3810
+ end
3811
+ end
3812
+
3813
+ # Indicates that the conversation succeeded, i.e., the bot handled the issue
3814
+ # that the customer talked to it about. Dialogflow only uses this to determine
3815
+ # which conversations should be counted as successful and doesn't process the
3816
+ # metadata in this message in any way. Note that Dialogflow also considers
3817
+ # conversations that get to the conversation end page as successful even if they
3818
+ # don't return ConversationSuccess. You may set this, for example: * In the
3819
+ # entry_fulfillment of a Page if entering the page indicates that the
3820
+ # conversation succeeded. * In a webhook response when you determine that you
3821
+ # handled the customer issue.
3822
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
3823
+ include Google::Apis::Core::Hashable
3824
+
3825
+ # Custom metadata. Dialogflow doesn't impose any structure on this.
3826
+ # Corresponds to the JSON property `metadata`
3827
+ # @return [Hash<String,Object>]
3828
+ attr_accessor :metadata
3829
+
3830
+ def initialize(**args)
3831
+ update!(**args)
3832
+ end
3833
+
3834
+ # Update properties of this object
3835
+ def update!(**args)
3836
+ @metadata = args[:metadata] if args.key?(:metadata)
3837
+ end
3838
+ end
3839
+
3840
+ # Indicates that interaction with the Dialogflow agent has ended. This message
3841
+ # is generated by Dialogflow only and not supposed to be defined by the user.
3842
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction
3843
+ include Google::Apis::Core::Hashable
3844
+
3845
+ def initialize(**args)
3846
+ update!(**args)
3847
+ end
3848
+
3849
+ # Update properties of this object
3850
+ def update!(**args)
3851
+ end
3852
+ end
3853
+
3854
+ # Indicates that the conversation should be handed off to a live agent.
3855
+ # Dialogflow only uses this to determine which conversations were handed off to
3856
+ # a human agent for measurement purposes. What else to do with this signal is up
3857
+ # to you and your handoff procedures. You may set this, for example: * In the
3858
+ # entry_fulfillment of a Page if entering the page indicates something went
3859
+ # extremely wrong in the conversation. * In a webhook response when you
3860
+ # determine that the customer issue can only be handled by a human.
3861
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
3862
+ include Google::Apis::Core::Hashable
3863
+
3864
+ # Custom metadata for your handoff procedure. Dialogflow doesn't impose any
3865
+ # structure on this.
3866
+ # Corresponds to the JSON property `metadata`
3867
+ # @return [Hash<String,Object>]
3868
+ attr_accessor :metadata
3869
+
3870
+ def initialize(**args)
3871
+ update!(**args)
3872
+ end
3873
+
3874
+ # Update properties of this object
3875
+ def update!(**args)
3876
+ @metadata = args[:metadata] if args.key?(:metadata)
3877
+ end
3878
+ end
3879
+
3880
+ # Represents an audio message that is composed of both segments synthesized from
3881
+ # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
3882
+ # The external URIs are specified via play_audio. This message is generated by
3883
+ # Dialogflow only and not supposed to be defined by the user.
3884
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
3885
+ include Google::Apis::Core::Hashable
3886
+
3887
+ # Segments this audio response is composed of.
3888
+ # Corresponds to the JSON property `segments`
3889
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment>]
3890
+ attr_accessor :segments
3891
+
3892
+ def initialize(**args)
3893
+ update!(**args)
3894
+ end
3895
+
3896
+ # Update properties of this object
3897
+ def update!(**args)
3898
+ @segments = args[:segments] if args.key?(:segments)
3899
+ end
3900
+ end
3901
+
3902
+ # Represents one segment of audio.
3903
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
3904
+ include Google::Apis::Core::Hashable
3905
+
3906
+ # Output only. Whether the playback of this segment can be interrupted by the
3907
+ # end user's speech and the client should then start the next Dialogflow request.
3908
+ # Corresponds to the JSON property `allowPlaybackInterruption`
3909
+ # @return [Boolean]
3910
+ attr_accessor :allow_playback_interruption
3911
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
3912
+
3913
+ # Raw audio synthesized from the Dialogflow agent's response using the output
3914
+ # config specified in the request.
3915
+ # Corresponds to the JSON property `audio`
3916
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
3917
+ # @return [String]
3918
+ attr_accessor :audio
3919
+
3920
+ # Client-specific URI that points to an audio clip accessible to the client.
3921
+ # Dialogflow does not impose any validation on it.
3922
+ # Corresponds to the JSON property `uri`
3923
+ # @return [String]
3924
+ attr_accessor :uri
3925
+
3926
+ def initialize(**args)
3927
+ update!(**args)
3928
+ end
3929
+
3930
+ # Update properties of this object
3931
+ def update!(**args)
3932
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
3933
+ @audio = args[:audio] if args.key?(:audio)
3934
+ @uri = args[:uri] if args.key?(:uri)
3935
+ end
3936
+ end
3937
+
3938
+ # A text or ssml response that is preferentially used for TTS output audio
3939
+ # synthesis, as described in the comment on the ResponseMessage message.
3940
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
3941
+ include Google::Apis::Core::Hashable
3942
+
3943
+ # Output only. Whether the playback of this message can be interrupted by the
3944
+ # end user's speech and the client can then starts the next Dialogflow request.
3945
+ # Corresponds to the JSON property `allowPlaybackInterruption`
3946
+ # @return [Boolean]
3947
+ attr_accessor :allow_playback_interruption
3948
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
3949
+
3950
+ # The SSML text to be synthesized. For more information, see [SSML](/speech/text-
3951
+ # to-speech/docs/ssml).
3952
+ # Corresponds to the JSON property `ssml`
3953
+ # @return [String]
3954
+ attr_accessor :ssml
3955
+
3956
+ # The raw text to be synthesized.
3957
+ # Corresponds to the JSON property `text`
3958
+ # @return [String]
3959
+ attr_accessor :text
3960
+
3961
+ def initialize(**args)
3962
+ update!(**args)
3963
+ end
3964
+
3965
+ # Update properties of this object
3966
+ def update!(**args)
3967
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
3968
+ @ssml = args[:ssml] if args.key?(:ssml)
3969
+ @text = args[:text] if args.key?(:text)
3970
+ end
3971
+ end
3972
+
3973
+ # Specifies an audio clip to be played by the client as part of the response.
3974
+ class GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
3975
+ include Google::Apis::Core::Hashable
3976
+
3977
+ # Output only. Whether the playback of this message can be interrupted by the
3978
+ # end user's speech and the client can then starts the next Dialogflow request.
3979
+ # Corresponds to the JSON property `allowPlaybackInterruption`
3980
+ # @return [Boolean]
3981
+ attr_accessor :allow_playback_interruption
3982
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
3983
+
3984
+ # Required. URI of the audio clip. Dialogflow does not impose any validation on
3985
+ # this value. It is specific to the client that reads it.
3986
+ # Corresponds to the JSON property `audioUri`
3987
+ # @return [String]
3988
+ attr_accessor :audio_uri
3989
+
3990
+ def initialize(**args)
3991
+ update!(**args)
3992
+ end
3993
+
3994
+ # Update properties of this object
3995
+ def update!(**args)
3996
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
3997
+ @audio_uri = args[:audio_uri] if args.key?(:audio_uri)
3998
+ end
3999
+ end
4000
+
4001
+ # The text response message.
4002
+ class GoogleCloudDialogflowCxV3beta1ResponseMessageText
4003
+ include Google::Apis::Core::Hashable
4004
+
4005
+ # Output only. Whether the playback of this message can be interrupted by the
4006
+ # end user's speech and the client can then starts the next Dialogflow request.
4007
+ # Corresponds to the JSON property `allowPlaybackInterruption`
4008
+ # @return [Boolean]
4009
+ attr_accessor :allow_playback_interruption
4010
+ alias_method :allow_playback_interruption?, :allow_playback_interruption
4011
+
4012
+ # Required. A collection of text responses.
4013
+ # Corresponds to the JSON property `text`
4014
+ # @return [Array<String>]
4015
+ attr_accessor :text
4016
+
4017
+ def initialize(**args)
4018
+ update!(**args)
4019
+ end
4020
+
4021
+ # Update properties of this object
4022
+ def update!(**args)
4023
+ @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
4024
+ @text = args[:text] if args.key?(:text)
4025
+ end
4026
+ end
4027
+
4028
+ # Metadata returned for the TestCases.RunTestCase long running operation.
4029
+ class GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata
4030
+ include Google::Apis::Core::Hashable
4031
+
4032
+ def initialize(**args)
4033
+ update!(**args)
4034
+ end
4035
+
4036
+ # Update properties of this object
4037
+ def update!(**args)
4038
+ end
4039
+ end
4040
+
4041
+ # The response message for TestCases.RunTestCase.
4042
+ class GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
4043
+ include Google::Apis::Core::Hashable
4044
+
4045
+ # Represents a result from running a test case in an agent environment.
4046
+ # Corresponds to the JSON property `result`
4047
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestCaseResult]
4048
+ attr_accessor :result
4049
+
4050
+ def initialize(**args)
4051
+ update!(**args)
4052
+ end
4053
+
4054
+ # Update properties of this object
4055
+ def update!(**args)
4056
+ @result = args[:result] if args.key?(:result)
4057
+ end
4058
+ end
4059
+
4060
+ # Represents session information communicated to and from the webhook.
4061
+ class GoogleCloudDialogflowCxV3beta1SessionInfo
4062
+ include Google::Apis::Core::Hashable
4063
+
4064
+ # Optional for WebhookRequest. Optional for WebhookResponse. All parameters
4065
+ # collected from forms and intents during the session. Parameters can be created,
4066
+ # updated, or removed by the webhook. To remove a parameter from the session,
4067
+ # the webhook should explicitly set the parameter value to null in
4068
+ # WebhookResponse. The map is keyed by parameters' display names.
4069
+ # Corresponds to the JSON property `parameters`
4070
+ # @return [Hash<String,Object>]
4071
+ attr_accessor :parameters
4072
+
4073
+ # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
4074
+ # identifier of the session. This field can be used by the webhook to identify a
4075
+ # user. Format: `projects//locations//agents//sessions/`.
4076
+ # Corresponds to the JSON property `session`
4077
+ # @return [String]
4078
+ attr_accessor :session
4079
+
4080
+ def initialize(**args)
4081
+ update!(**args)
4082
+ end
4083
+
4084
+ # Update properties of this object
4085
+ def update!(**args)
4086
+ @parameters = args[:parameters] if args.key?(:parameters)
4087
+ @session = args[:session] if args.key?(:session)
4088
+ end
4089
+ end
4090
+
4091
+ # Represents a test case.
4092
+ class GoogleCloudDialogflowCxV3beta1TestCase
4093
+ include Google::Apis::Core::Hashable
4094
+
4095
+ # Output only. When the test was created.
4096
+ # Corresponds to the JSON property `creationTime`
4097
+ # @return [String]
4098
+ attr_accessor :creation_time
4099
+
4100
+ # Required. The human-readable name of the test case, unique within the agent.
4101
+ # Limit of 200 characters.
4102
+ # Corresponds to the JSON property `displayName`
4103
+ # @return [String]
4104
+ attr_accessor :display_name
4105
+
4106
+ # Represents a result from running a test case in an agent environment.
4107
+ # Corresponds to the JSON property `lastTestResult`
4108
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestCaseResult]
4109
+ attr_accessor :last_test_result
4110
+
4111
+ # The unique identifier of the test case. TestCases.CreateTestCase will populate
4112
+ # the name automatically. Otherwise use format: `projects//locations//agents/ /
4113
+ # testCases/`.
4114
+ # Corresponds to the JSON property `name`
4115
+ # @return [String]
4116
+ attr_accessor :name
4117
+
4118
+ # Additional freeform notes about the test case. Limit of 400 characters.
4119
+ # Corresponds to the JSON property `notes`
4120
+ # @return [String]
4121
+ attr_accessor :notes
4122
+
4123
+ # Tags are short descriptions that users may apply to test cases for
4124
+ # organizational and filtering purposes. Each tag should start with "#" and has
4125
+ # a limit of 30 characters.
4126
+ # Corresponds to the JSON property `tags`
4127
+ # @return [Array<String>]
4128
+ attr_accessor :tags
4129
+
4130
+ # The conversation turns uttered when the test case was created, in
4131
+ # chronological order. These include the canonical set of agent utterances that
4132
+ # should occur when the agent is working properly.
4133
+ # Corresponds to the JSON property `testCaseConversationTurns`
4134
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ConversationTurn>]
4135
+ attr_accessor :test_case_conversation_turns
4136
+
4137
+ # Represents configurations for a test case.
4138
+ # Corresponds to the JSON property `testConfig`
4139
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestConfig]
4140
+ attr_accessor :test_config
4141
+
4142
+ def initialize(**args)
4143
+ update!(**args)
4144
+ end
4145
+
4146
+ # Update properties of this object
4147
+ def update!(**args)
4148
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
4149
+ @display_name = args[:display_name] if args.key?(:display_name)
4150
+ @last_test_result = args[:last_test_result] if args.key?(:last_test_result)
4151
+ @name = args[:name] if args.key?(:name)
4152
+ @notes = args[:notes] if args.key?(:notes)
4153
+ @tags = args[:tags] if args.key?(:tags)
4154
+ @test_case_conversation_turns = args[:test_case_conversation_turns] if args.key?(:test_case_conversation_turns)
4155
+ @test_config = args[:test_config] if args.key?(:test_config)
4156
+ end
4157
+ end
4158
+
4159
+ # Error info for importing a test.
4160
+ class GoogleCloudDialogflowCxV3beta1TestCaseError
4161
+ include Google::Apis::Core::Hashable
4162
+
4163
+ # The `Status` type defines a logical error model that is suitable for different
4164
+ # programming environments, including REST APIs and RPC APIs. It is used by [
4165
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
4166
+ # data: error code, error message, and error details. You can find out more
4167
+ # about this error model and how to work with it in the [API Design Guide](https:
4168
+ # //cloud.google.com/apis/design/errors).
4169
+ # Corresponds to the JSON property `status`
4170
+ # @return [Google::Apis::DialogflowV2::GoogleRpcStatus]
4171
+ attr_accessor :status
4172
+
4173
+ # Represents a test case.
4174
+ # Corresponds to the JSON property `testCase`
4175
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestCase]
4176
+ attr_accessor :test_case
320
4177
 
321
4178
  def initialize(**args)
322
4179
  update!(**args)
@@ -324,21 +4181,42 @@ module Google
324
4181
 
325
4182
  # Update properties of this object
326
4183
  def update!(**args)
327
- @metadata = args[:metadata] if args.key?(:metadata)
4184
+ @status = args[:status] if args.key?(:status)
4185
+ @test_case = args[:test_case] if args.key?(:test_case)
328
4186
  end
329
4187
  end
330
4188
 
331
- # Represents an audio message that is composed of both segments synthesized from
332
- # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
333
- # The external URIs are specified via play_audio. This message is generated by
334
- # Dialogflow only and not supposed to be defined by the user.
335
- class GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
4189
+ # Represents a result from running a test case in an agent environment.
4190
+ class GoogleCloudDialogflowCxV3beta1TestCaseResult
336
4191
  include Google::Apis::Core::Hashable
337
4192
 
338
- # Segments this audio response is composed of.
339
- # Corresponds to the JSON property `segments`
340
- # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment>]
341
- attr_accessor :segments
4193
+ # The conversation turns uttered during the test case replay in chronological
4194
+ # order.
4195
+ # Corresponds to the JSON property `conversationTurns`
4196
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ConversationTurn>]
4197
+ attr_accessor :conversation_turns
4198
+
4199
+ # Optional. Environment where the test was run. If not set, it indicates the
4200
+ # draft environment.
4201
+ # Corresponds to the JSON property `environment`
4202
+ # @return [String]
4203
+ attr_accessor :environment
4204
+
4205
+ # The resource name for the test case result. Format: `projects//locations//
4206
+ # agents//testCases/ /results/`.
4207
+ # Corresponds to the JSON property `name`
4208
+ # @return [String]
4209
+ attr_accessor :name
4210
+
4211
+ # Whether the test case passed in the agent environment.
4212
+ # Corresponds to the JSON property `testResult`
4213
+ # @return [String]
4214
+ attr_accessor :test_result
4215
+
4216
+ # The time that the test was run.
4217
+ # Corresponds to the JSON property `testTime`
4218
+ # @return [String]
4219
+ attr_accessor :test_time
342
4220
 
343
4221
  def initialize(**args)
344
4222
  update!(**args)
@@ -346,33 +4224,28 @@ module Google
346
4224
 
347
4225
  # Update properties of this object
348
4226
  def update!(**args)
349
- @segments = args[:segments] if args.key?(:segments)
4227
+ @conversation_turns = args[:conversation_turns] if args.key?(:conversation_turns)
4228
+ @environment = args[:environment] if args.key?(:environment)
4229
+ @name = args[:name] if args.key?(:name)
4230
+ @test_result = args[:test_result] if args.key?(:test_result)
4231
+ @test_time = args[:test_time] if args.key?(:test_time)
350
4232
  end
351
4233
  end
352
4234
 
353
- # Represents one segment of audio.
354
- class GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
4235
+ # Represents configurations for a test case.
4236
+ class GoogleCloudDialogflowCxV3beta1TestConfig
355
4237
  include Google::Apis::Core::Hashable
356
4238
 
357
- # Output only. Whether the playback of this segment can be interrupted by the
358
- # end user's speech and the client should then start the next Dialogflow request.
359
- # Corresponds to the JSON property `allowPlaybackInterruption`
360
- # @return [Boolean]
361
- attr_accessor :allow_playback_interruption
362
- alias_method :allow_playback_interruption?, :allow_playback_interruption
363
-
364
- # Raw audio synthesized from the Dialogflow agent's response using the output
365
- # config specified in the request.
366
- # Corresponds to the JSON property `audio`
367
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
4239
+ # Flow name. If not set, default start flow is assumed. Format: `projects//
4240
+ # locations//agents//flows/`.
4241
+ # Corresponds to the JSON property `flow`
368
4242
  # @return [String]
369
- attr_accessor :audio
4243
+ attr_accessor :flow
370
4244
 
371
- # Client-specific URI that points to an audio clip accessible to the client.
372
- # Dialogflow does not impose any validation on it.
373
- # Corresponds to the JSON property `uri`
374
- # @return [String]
375
- attr_accessor :uri
4245
+ # Session parameters to be compared when calculating differences.
4246
+ # Corresponds to the JSON property `trackingParameters`
4247
+ # @return [Array<String>]
4248
+ attr_accessor :tracking_parameters
376
4249
 
377
4250
  def initialize(**args)
378
4251
  update!(**args)
@@ -380,34 +4253,34 @@ module Google
380
4253
 
381
4254
  # Update properties of this object
382
4255
  def update!(**args)
383
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
384
- @audio = args[:audio] if args.key?(:audio)
385
- @uri = args[:uri] if args.key?(:uri)
4256
+ @flow = args[:flow] if args.key?(:flow)
4257
+ @tracking_parameters = args[:tracking_parameters] if args.key?(:tracking_parameters)
386
4258
  end
387
4259
  end
388
4260
 
389
- # A text or ssml response that is preferentially used for TTS output audio
390
- # synthesis, as described in the comment on the ResponseMessage message.
391
- class GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
4261
+ # Error info for running a test.
4262
+ class GoogleCloudDialogflowCxV3beta1TestError
392
4263
  include Google::Apis::Core::Hashable
393
4264
 
394
- # Output only. Whether the playback of this message can be interrupted by the
395
- # end user's speech and the client can then starts the next Dialogflow request.
396
- # Corresponds to the JSON property `allowPlaybackInterruption`
397
- # @return [Boolean]
398
- attr_accessor :allow_playback_interruption
399
- alias_method :allow_playback_interruption?, :allow_playback_interruption
4265
+ # The `Status` type defines a logical error model that is suitable for different
4266
+ # programming environments, including REST APIs and RPC APIs. It is used by [
4267
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
4268
+ # data: error code, error message, and error details. You can find out more
4269
+ # about this error model and how to work with it in the [API Design Guide](https:
4270
+ # //cloud.google.com/apis/design/errors).
4271
+ # Corresponds to the JSON property `status`
4272
+ # @return [Google::Apis::DialogflowV2::GoogleRpcStatus]
4273
+ attr_accessor :status
400
4274
 
401
- # The SSML text to be synthesized. For more information, see [SSML](/speech/text-
402
- # to-speech/docs/ssml).
403
- # Corresponds to the JSON property `ssml`
4275
+ # The test case resource name.
4276
+ # Corresponds to the JSON property `testCase`
404
4277
  # @return [String]
405
- attr_accessor :ssml
4278
+ attr_accessor :test_case
406
4279
 
407
- # The raw text to be synthesized.
408
- # Corresponds to the JSON property `text`
4280
+ # The timestamp when the test was completed.
4281
+ # Corresponds to the JSON property `testTime`
409
4282
  # @return [String]
410
- attr_accessor :text
4283
+ attr_accessor :test_time
411
4284
 
412
4285
  def initialize(**args)
413
4286
  update!(**args)
@@ -415,28 +4288,25 @@ module Google
415
4288
 
416
4289
  # Update properties of this object
417
4290
  def update!(**args)
418
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
419
- @ssml = args[:ssml] if args.key?(:ssml)
420
- @text = args[:text] if args.key?(:text)
4291
+ @status = args[:status] if args.key?(:status)
4292
+ @test_case = args[:test_case] if args.key?(:test_case)
4293
+ @test_time = args[:test_time] if args.key?(:test_time)
421
4294
  end
422
4295
  end
423
4296
 
424
- # Specifies an audio clip to be played by the client as part of the response.
425
- class GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
4297
+ # The description of differences between original and replayed agent output.
4298
+ class GoogleCloudDialogflowCxV3beta1TestRunDifference
426
4299
  include Google::Apis::Core::Hashable
427
4300
 
428
- # Output only. Whether the playback of this message can be interrupted by the
429
- # end user's speech and the client can then starts the next Dialogflow request.
430
- # Corresponds to the JSON property `allowPlaybackInterruption`
431
- # @return [Boolean]
432
- attr_accessor :allow_playback_interruption
433
- alias_method :allow_playback_interruption?, :allow_playback_interruption
4301
+ # A description of the diff, showing the actual output vs expected output.
4302
+ # Corresponds to the JSON property `description`
4303
+ # @return [String]
4304
+ attr_accessor :description
434
4305
 
435
- # Required. URI of the audio clip. Dialogflow does not impose any validation on
436
- # this value. It is specific to the client that reads it.
437
- # Corresponds to the JSON property `audioUri`
4306
+ # The type of diff.
4307
+ # Corresponds to the JSON property `type`
438
4308
  # @return [String]
439
- attr_accessor :audio_uri
4309
+ attr_accessor :type
440
4310
 
441
4311
  def initialize(**args)
442
4312
  update!(**args)
@@ -444,25 +4314,19 @@ module Google
444
4314
 
445
4315
  # Update properties of this object
446
4316
  def update!(**args)
447
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
448
- @audio_uri = args[:audio_uri] if args.key?(:audio_uri)
4317
+ @description = args[:description] if args.key?(:description)
4318
+ @type = args[:type] if args.key?(:type)
449
4319
  end
450
4320
  end
451
4321
 
452
- # The text response message.
453
- class GoogleCloudDialogflowCxV3beta1ResponseMessageText
4322
+ # Represents the natural language text to be processed.
4323
+ class GoogleCloudDialogflowCxV3beta1TextInput
454
4324
  include Google::Apis::Core::Hashable
455
4325
 
456
- # Output only. Whether the playback of this message can be interrupted by the
457
- # end user's speech and the client can then starts the next Dialogflow request.
458
- # Corresponds to the JSON property `allowPlaybackInterruption`
459
- # @return [Boolean]
460
- attr_accessor :allow_playback_interruption
461
- alias_method :allow_playback_interruption?, :allow_playback_interruption
462
-
463
- # Required. A collection of text responses.
4326
+ # Required. The UTF-8 encoded natural language text to be processed. Text length
4327
+ # must not exceed 256 characters.
464
4328
  # Corresponds to the JSON property `text`
465
- # @return [Array<String>]
4329
+ # @return [String]
466
4330
  attr_accessor :text
467
4331
 
468
4332
  def initialize(**args)
@@ -471,30 +4335,65 @@ module Google
471
4335
 
472
4336
  # Update properties of this object
473
4337
  def update!(**args)
474
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
475
4338
  @text = args[:text] if args.key?(:text)
476
4339
  end
477
4340
  end
478
4341
 
479
- # Represents session information communicated to and from the webhook.
480
- class GoogleCloudDialogflowCxV3beta1SessionInfo
4342
+ # A transition route specifies a intent that can be matched and/or a data
4343
+ # condition that can be evaluated during a session. When a specified transition
4344
+ # is matched, the following actions are taken in order: * If there is a `
4345
+ # trigger_fulfillment` associated with the transition, it will be called. * If
4346
+ # there is a `target_page` associated with the transition, the session will
4347
+ # transition into the specified page. * If there is a `target_flow` associated
4348
+ # with the transition, the session will transition into the specified flow.
4349
+ class GoogleCloudDialogflowCxV3beta1TransitionRoute
481
4350
  include Google::Apis::Core::Hashable
482
4351
 
483
- # Optional for WebhookRequest. Optional for WebhookResponse. All parameters
484
- # collected from forms and intents during the session. Parameters can be created,
485
- # updated, or removed by the webhook. To remove a parameter from the session,
486
- # the webhook should explicitly set the parameter value to null in
487
- # WebhookResponse. The map is keyed by parameters' display names.
488
- # Corresponds to the JSON property `parameters`
489
- # @return [Hash<String,Object>]
490
- attr_accessor :parameters
4352
+ # The condition to evaluate against form parameters or session parameters. See
4353
+ # the [conditions reference](https://cloud.google.com/dialogflow/cx/docs/
4354
+ # reference/condition). At least one of `intent` or `condition` must be
4355
+ # specified. When both `intent` and `condition` are specified, the transition
4356
+ # can only happen when both are fulfilled.
4357
+ # Corresponds to the JSON property `condition`
4358
+ # @return [String]
4359
+ attr_accessor :condition
491
4360
 
492
- # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
493
- # identifier of the session. This field can be used by the webhook to identify a
494
- # user. Format: `projects//locations//agents//sessions/`.
495
- # Corresponds to the JSON property `session`
4361
+ # The unique identifier of an Intent. Format: `projects//locations//agents//
4362
+ # intents/`. Indicates that the transition can only happen when the given intent
4363
+ # is matched. At least one of `intent` or `condition` must be specified. When
4364
+ # both `intent` and `condition` are specified, the transition can only happen
4365
+ # when both are fulfilled.
4366
+ # Corresponds to the JSON property `intent`
496
4367
  # @return [String]
497
- attr_accessor :session
4368
+ attr_accessor :intent
4369
+
4370
+ # Output only. The unique identifier of this transition route.
4371
+ # Corresponds to the JSON property `name`
4372
+ # @return [String]
4373
+ attr_accessor :name
4374
+
4375
+ # The target flow to transition to. Format: `projects//locations//agents//flows/`
4376
+ # .
4377
+ # Corresponds to the JSON property `targetFlow`
4378
+ # @return [String]
4379
+ attr_accessor :target_flow
4380
+
4381
+ # The target page to transition to. Format: `projects//locations//agents//flows//
4382
+ # pages/`.
4383
+ # Corresponds to the JSON property `targetPage`
4384
+ # @return [String]
4385
+ attr_accessor :target_page
4386
+
4387
+ # A fulfillment can do one or more of the following actions at the same time: *
4388
+ # Generate rich message responses. * Set parameter values. * Call the webhook.
4389
+ # Fulfillments can be called at various stages in the Page or Form lifecycle.
4390
+ # For example, when a DetectIntentRequest drives a session to enter a new page,
4391
+ # the page's entry fulfillment can add a static response to the QueryResult in
4392
+ # the returning DetectIntentResponse, call the webhook (for example, to load
4393
+ # user data from a database), or both.
4394
+ # Corresponds to the JSON property `triggerFulfillment`
4395
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1Fulfillment]
4396
+ attr_accessor :trigger_fulfillment
498
4397
 
499
4398
  def initialize(**args)
500
4399
  update!(**args)
@@ -502,8 +4401,31 @@ module Google
502
4401
 
503
4402
  # Update properties of this object
504
4403
  def update!(**args)
505
- @parameters = args[:parameters] if args.key?(:parameters)
506
- @session = args[:session] if args.key?(:session)
4404
+ @condition = args[:condition] if args.key?(:condition)
4405
+ @intent = args[:intent] if args.key?(:intent)
4406
+ @name = args[:name] if args.key?(:name)
4407
+ @target_flow = args[:target_flow] if args.key?(:target_flow)
4408
+ @target_page = args[:target_page] if args.key?(:target_page)
4409
+ @trigger_fulfillment = args[:trigger_fulfillment] if args.key?(:trigger_fulfillment)
4410
+ end
4411
+ end
4412
+
4413
+ # Metadata for UpdateDocument operation.
4414
+ class GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata
4415
+ include Google::Apis::Core::Hashable
4416
+
4417
+ # Metadata in google::longrunning::Operation for Knowledge operations.
4418
+ # Corresponds to the JSON property `genericMetadata`
4419
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata]
4420
+ attr_accessor :generic_metadata
4421
+
4422
+ def initialize(**args)
4423
+ update!(**args)
4424
+ end
4425
+
4426
+ # Update properties of this object
4427
+ def update!(**args)
4428
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
507
4429
  end
508
4430
  end
509
4431
 
@@ -3486,8 +7408,8 @@ module Google
3486
7408
 
3487
7409
  # This field can be used to pass HTTP headers for a webhook call. These headers
3488
7410
  # will be sent to webhook along with the headers that have been configured
3489
- # through Dialogflow web console. The headers defined within this field will
3490
- # overwrite the headers configured through Dialogflow console if there is a
7411
+ # through the Dialogflow web console. The headers defined within this field will
7412
+ # overwrite the headers configured through the Dialogflow console if there is a
3491
7413
  # conflict. Header names are case-insensitive. Google's specified headers are
3492
7414
  # not allowed. Including: "Host", "Content-Length", "Connection", "From", "User-
3493
7415
  # Agent", "Accept-Encoding", "If-Modified-Since", "If-None-Match", "X-Forwarded-
@@ -6700,6 +10622,139 @@ module Google
6700
10622
  end
6701
10623
  end
6702
10624
 
10625
+ # Metadata for CreateDocument operation.
10626
+ class GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata
10627
+ include Google::Apis::Core::Hashable
10628
+
10629
+ # Metadata in google::longrunning::Operation for Knowledge operations.
10630
+ # Corresponds to the JSON property `genericMetadata`
10631
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata]
10632
+ attr_accessor :generic_metadata
10633
+
10634
+ def initialize(**args)
10635
+ update!(**args)
10636
+ end
10637
+
10638
+ # Update properties of this object
10639
+ def update!(**args)
10640
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
10641
+ end
10642
+ end
10643
+
10644
+ # Metadata for DeleteDocument operation.
10645
+ class GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata
10646
+ include Google::Apis::Core::Hashable
10647
+
10648
+ # Metadata in google::longrunning::Operation for Knowledge operations.
10649
+ # Corresponds to the JSON property `genericMetadata`
10650
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata]
10651
+ attr_accessor :generic_metadata
10652
+
10653
+ def initialize(**args)
10654
+ update!(**args)
10655
+ end
10656
+
10657
+ # Update properties of this object
10658
+ def update!(**args)
10659
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
10660
+ end
10661
+ end
10662
+
10663
+ # Metadata in google::longrunning::Operation for Knowledge operations.
10664
+ class GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata
10665
+ include Google::Apis::Core::Hashable
10666
+
10667
+ # Required. Output only. The current state of this operation.
10668
+ # Corresponds to the JSON property `state`
10669
+ # @return [String]
10670
+ attr_accessor :state
10671
+
10672
+ def initialize(**args)
10673
+ update!(**args)
10674
+ end
10675
+
10676
+ # Update properties of this object
10677
+ def update!(**args)
10678
+ @state = args[:state] if args.key?(:state)
10679
+ end
10680
+ end
10681
+
10682
+ # Metadata for ImportDocuments operation.
10683
+ class GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata
10684
+ include Google::Apis::Core::Hashable
10685
+
10686
+ # Metadata in google::longrunning::Operation for Knowledge operations.
10687
+ # Corresponds to the JSON property `genericMetadata`
10688
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata]
10689
+ attr_accessor :generic_metadata
10690
+
10691
+ def initialize(**args)
10692
+ update!(**args)
10693
+ end
10694
+
10695
+ # Update properties of this object
10696
+ def update!(**args)
10697
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
10698
+ end
10699
+ end
10700
+
10701
+ # Response message for Documents.ImportDocuments.
10702
+ class GoogleCloudDialogflowV3alpha1ImportDocumentsResponse
10703
+ include Google::Apis::Core::Hashable
10704
+
10705
+ # Includes details about skipped documents or any other warnings.
10706
+ # Corresponds to the JSON property `warnings`
10707
+ # @return [Array<Google::Apis::DialogflowV2::GoogleRpcStatus>]
10708
+ attr_accessor :warnings
10709
+
10710
+ def initialize(**args)
10711
+ update!(**args)
10712
+ end
10713
+
10714
+ # Update properties of this object
10715
+ def update!(**args)
10716
+ @warnings = args[:warnings] if args.key?(:warnings)
10717
+ end
10718
+ end
10719
+
10720
+ # Metadata for ReloadDocument operation.
10721
+ class GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata
10722
+ include Google::Apis::Core::Hashable
10723
+
10724
+ # Metadata in google::longrunning::Operation for Knowledge operations.
10725
+ # Corresponds to the JSON property `genericMetadata`
10726
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata]
10727
+ attr_accessor :generic_metadata
10728
+
10729
+ def initialize(**args)
10730
+ update!(**args)
10731
+ end
10732
+
10733
+ # Update properties of this object
10734
+ def update!(**args)
10735
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
10736
+ end
10737
+ end
10738
+
10739
+ # Metadata for UpdateDocument operation.
10740
+ class GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata
10741
+ include Google::Apis::Core::Hashable
10742
+
10743
+ # Metadata in google::longrunning::Operation for Knowledge operations.
10744
+ # Corresponds to the JSON property `genericMetadata`
10745
+ # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata]
10746
+ attr_accessor :generic_metadata
10747
+
10748
+ def initialize(**args)
10749
+ update!(**args)
10750
+ end
10751
+
10752
+ # Update properties of this object
10753
+ def update!(**args)
10754
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
10755
+ end
10756
+ end
10757
+
6703
10758
  # The response message for Operations.ListOperations.
6704
10759
  class GoogleLongrunningListOperationsResponse
6705
10760
  include Google::Apis::Core::Hashable