google-api-client 0.50.0 → 0.53.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (608) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +0 -14
  3. data/CHANGELOG.md +233 -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/adexchangebuyer2_v2beta1/classes.rb +50 -6
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +18 -0
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +3 -1
  11. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  12. data/generated/google/apis/admin_datatransfer_v1/classes.rb +6 -16
  13. data/generated/google/apis/admin_datatransfer_v1/service.rb +3 -3
  14. data/generated/google/apis/admin_datatransfer_v1.rb +2 -2
  15. data/generated/google/apis/admin_directory_v1/classes.rb +453 -321
  16. data/generated/google/apis/admin_directory_v1/representations.rb +15 -15
  17. data/generated/google/apis/admin_directory_v1/service.rb +325 -185
  18. data/generated/google/apis/admin_directory_v1.rb +2 -2
  19. data/generated/google/apis/admin_reports_v1/classes.rb +48 -43
  20. data/generated/google/apis/admin_reports_v1/service.rb +198 -179
  21. data/generated/google/apis/admin_reports_v1.rb +2 -2
  22. data/generated/google/apis/admob_v1.rb +1 -1
  23. data/generated/google/apis/admob_v1beta.rb +1 -1
  24. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  25. data/generated/google/apis/analytics_v3/service.rb +1 -1
  26. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +10 -2
  27. data/generated/google/apis/analyticsadmin_v1alpha/representations.rb +1 -0
  28. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +41 -21
  29. data/generated/google/apis/analyticsadmin_v1alpha.rb +2 -2
  30. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +93 -28
  31. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +2 -0
  32. data/generated/google/apis/analyticsdata_v1alpha/service.rb +5 -5
  33. data/generated/google/apis/analyticsdata_v1alpha.rb +2 -2
  34. data/generated/google/apis/androidenterprise_v1/service.rb +4 -1
  35. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  36. data/generated/google/apis/androidmanagement_v1/classes.rb +69 -4
  37. data/generated/google/apis/androidmanagement_v1/representations.rb +19 -0
  38. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  39. data/generated/google/apis/androidpublisher_v3/service.rb +4 -4
  40. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  41. data/generated/google/apis/apigateway_v1/classes.rb +1116 -0
  42. data/generated/google/apis/apigateway_v1/representations.rb +442 -0
  43. data/generated/google/apis/apigateway_v1/service.rb +1172 -0
  44. data/{lib/google/apis/core/logging.rb → generated/google/apis/apigateway_v1.rb} +14 -10
  45. data/generated/google/apis/apigateway_v1beta/classes.rb +22 -17
  46. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -1
  47. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  48. data/generated/google/apis/apigee_v1/classes.rb +102 -29
  49. data/generated/google/apis/apigee_v1/representations.rb +42 -0
  50. data/generated/google/apis/apigee_v1/service.rb +264 -55
  51. data/generated/google/apis/apigee_v1.rb +1 -1
  52. data/generated/google/apis/appengine_v1/classes.rb +7 -0
  53. data/generated/google/apis/appengine_v1/representations.rb +1 -0
  54. data/generated/google/apis/appengine_v1.rb +1 -1
  55. data/generated/google/apis/appengine_v1beta/classes.rb +8 -0
  56. data/generated/google/apis/appengine_v1beta/representations.rb +1 -0
  57. data/generated/google/apis/appengine_v1beta.rb +1 -1
  58. data/generated/google/apis/area120tables_v1alpha1.rb +4 -1
  59. data/generated/google/apis/artifactregistry_v1/classes.rb +242 -0
  60. data/generated/google/apis/artifactregistry_v1/representations.rb +116 -0
  61. data/generated/google/apis/artifactregistry_v1/service.rb +210 -0
  62. data/generated/google/apis/artifactregistry_v1.rb +38 -0
  63. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +0 -120
  64. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +0 -62
  65. data/generated/google/apis/artifactregistry_v1beta1/service.rb +4 -1
  66. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  67. data/generated/google/apis/artifactregistry_v1beta2/classes.rb +917 -0
  68. data/generated/google/apis/artifactregistry_v1beta2/representations.rb +381 -0
  69. data/generated/google/apis/artifactregistry_v1beta2/service.rb +947 -0
  70. data/generated/google/apis/artifactregistry_v1beta2.rb +38 -0
  71. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/classes.rb +49 -137
  72. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/representations.rb +27 -87
  73. data/generated/google/apis/{assuredworkloads_v1beta1 → assuredworkloads_v1}/service.rb +46 -46
  74. data/generated/google/apis/{assuredworkloads_v1beta1.rb → assuredworkloads_v1.rb} +6 -6
  75. data/generated/google/apis/binaryauthorization_v1/classes.rb +0 -6
  76. data/generated/google/apis/binaryauthorization_v1/representations.rb +0 -1
  77. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  78. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +2 -7
  79. data/generated/google/apis/binaryauthorization_v1beta1/representations.rb +0 -1
  80. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  81. data/generated/google/apis/chat_v1/service.rb +308 -0
  82. data/generated/google/apis/chat_v1.rb +1 -1
  83. data/generated/google/apis/cloudasset_v1/classes.rb +332 -3
  84. data/generated/google/apis/cloudasset_v1/representations.rb +139 -0
  85. data/generated/google/apis/cloudasset_v1.rb +1 -1
  86. data/generated/google/apis/cloudasset_v1beta1/classes.rb +326 -0
  87. data/generated/google/apis/cloudasset_v1beta1/representations.rb +139 -0
  88. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  89. data/generated/google/apis/cloudasset_v1p5beta1/classes.rb +326 -0
  90. data/generated/google/apis/cloudasset_v1p5beta1/representations.rb +139 -0
  91. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  92. data/generated/google/apis/cloudbuild_v1/classes.rb +4 -4
  93. data/generated/google/apis/cloudbuild_v1/service.rb +1 -1
  94. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  95. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +3 -3
  96. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  97. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +3 -3
  98. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  99. data/generated/google/apis/cloudfunctions_v1/classes.rb +6 -0
  100. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -0
  101. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  102. data/generated/google/apis/cloudidentity_v1/classes.rb +240 -0
  103. data/generated/google/apis/cloudidentity_v1/representations.rb +125 -0
  104. data/generated/google/apis/cloudidentity_v1/service.rb +210 -6
  105. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  106. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +1 -1
  107. data/generated/google/apis/cloudidentity_v1beta1/service.rb +16 -6
  108. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  109. data/generated/google/apis/cloudiot_v1/classes.rb +0 -6
  110. data/generated/google/apis/cloudiot_v1/representations.rb +0 -1
  111. data/generated/google/apis/cloudiot_v1.rb +1 -1
  112. data/generated/google/apis/cloudkms_v1/classes.rb +0 -6
  113. data/generated/google/apis/cloudkms_v1/representations.rb +0 -1
  114. data/generated/google/apis/cloudkms_v1.rb +1 -1
  115. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +0 -26
  116. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +0 -24
  117. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +0 -26
  119. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +0 -24
  120. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  121. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +0 -26
  122. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +0 -24
  123. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +0 -26
  125. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +0 -24
  126. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  127. data/generated/google/apis/cloudscheduler_v1beta1/classes.rb +19 -0
  128. data/generated/google/apis/cloudscheduler_v1beta1/representations.rb +2 -0
  129. data/generated/google/apis/cloudscheduler_v1beta1/service.rb +12 -2
  130. data/generated/google/apis/cloudscheduler_v1beta1.rb +1 -1
  131. data/generated/google/apis/cloudsearch_v1/classes.rb +10 -5
  132. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  133. data/generated/google/apis/cloudtasks_v2/classes.rb +0 -6
  134. data/generated/google/apis/cloudtasks_v2/representations.rb +0 -1
  135. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  136. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +59 -6
  137. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +19 -1
  138. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  139. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +102 -6
  140. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +35 -1
  141. data/generated/google/apis/cloudtasks_v2beta3/service.rb +16 -2
  142. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  143. data/generated/google/apis/composer_v1/classes.rb +123 -0
  144. data/generated/google/apis/composer_v1/representations.rb +49 -0
  145. data/generated/google/apis/composer_v1/service.rb +19 -15
  146. data/generated/google/apis/composer_v1.rb +1 -1
  147. data/generated/google/apis/composer_v1beta1/classes.rb +173 -0
  148. data/generated/google/apis/composer_v1beta1/representations.rb +64 -0
  149. data/generated/google/apis/composer_v1beta1/service.rb +39 -1
  150. data/generated/google/apis/composer_v1beta1.rb +1 -1
  151. data/generated/google/apis/compute_alpha/classes.rb +1071 -341
  152. data/generated/google/apis/compute_alpha/representations.rb +248 -19
  153. data/generated/google/apis/compute_alpha/service.rb +291 -15
  154. data/generated/google/apis/compute_alpha.rb +1 -1
  155. data/generated/google/apis/compute_beta/classes.rb +926 -283
  156. data/generated/google/apis/compute_beta/representations.rb +221 -18
  157. data/generated/google/apis/compute_beta/service.rb +24 -15
  158. data/generated/google/apis/compute_beta.rb +1 -1
  159. data/generated/google/apis/compute_v1/classes.rb +426 -160
  160. data/generated/google/apis/compute_v1/representations.rb +56 -0
  161. data/generated/google/apis/compute_v1/service.rb +700 -551
  162. data/generated/google/apis/compute_v1.rb +1 -1
  163. data/generated/google/apis/container_v1/classes.rb +55 -16
  164. data/generated/google/apis/container_v1/representations.rb +17 -0
  165. data/generated/google/apis/container_v1/service.rb +4 -2
  166. data/generated/google/apis/container_v1.rb +1 -1
  167. data/generated/google/apis/container_v1beta1/classes.rb +31 -20
  168. data/generated/google/apis/container_v1beta1/representations.rb +2 -0
  169. data/generated/google/apis/container_v1beta1/service.rb +6 -2
  170. data/generated/google/apis/container_v1beta1.rb +1 -1
  171. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +0 -6
  172. data/generated/google/apis/containeranalysis_v1alpha1/representations.rb +0 -1
  173. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  174. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +2 -7
  175. data/generated/google/apis/containeranalysis_v1beta1/representations.rb +0 -1
  176. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  177. data/generated/google/apis/content_v2/classes.rb +4 -4
  178. data/generated/google/apis/content_v2.rb +1 -1
  179. data/generated/google/apis/content_v2_1/classes.rb +625 -11
  180. data/generated/google/apis/content_v2_1/representations.rb +266 -0
  181. data/generated/google/apis/content_v2_1/service.rb +295 -0
  182. data/generated/google/apis/content_v2_1.rb +1 -1
  183. data/generated/google/apis/datacatalog_v1beta1/classes.rb +6 -6
  184. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -1
  185. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  186. data/generated/google/apis/dataflow_v1b3/classes.rb +17 -1
  187. data/generated/google/apis/dataflow_v1b3/representations.rb +2 -0
  188. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  189. data/generated/google/apis/datalabeling_v1beta1.rb +1 -1
  190. data/generated/google/apis/datamigration_v1beta1/classes.rb +0 -6
  191. data/generated/google/apis/datamigration_v1beta1/representations.rb +0 -1
  192. data/generated/google/apis/datamigration_v1beta1.rb +1 -1
  193. data/generated/google/apis/dataproc_v1/classes.rb +107 -7
  194. data/generated/google/apis/dataproc_v1/representations.rb +36 -1
  195. data/generated/google/apis/dataproc_v1/service.rb +42 -0
  196. data/generated/google/apis/dataproc_v1.rb +1 -1
  197. data/generated/google/apis/dataproc_v1beta2/classes.rb +75 -7
  198. data/generated/google/apis/dataproc_v1beta2/representations.rb +32 -1
  199. data/generated/google/apis/dataproc_v1beta2/service.rb +42 -0
  200. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  201. data/generated/google/apis/deploymentmanager_alpha/classes.rb +276 -644
  202. data/generated/google/apis/deploymentmanager_alpha/representations.rb +10 -143
  203. data/generated/google/apis/deploymentmanager_alpha/service.rb +247 -398
  204. data/generated/google/apis/deploymentmanager_alpha.rb +6 -5
  205. data/generated/google/apis/deploymentmanager_v2/classes.rb +0 -6
  206. data/generated/google/apis/deploymentmanager_v2/representations.rb +0 -1
  207. data/generated/google/apis/deploymentmanager_v2/service.rb +5 -25
  208. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  209. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +0 -6
  210. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +0 -1
  211. data/generated/google/apis/deploymentmanager_v2beta/service.rb +8 -40
  212. data/generated/google/apis/deploymentmanager_v2beta.rb +1 -1
  213. data/generated/google/apis/dialogflow_v2/classes.rb +3930 -507
  214. data/generated/google/apis/dialogflow_v2/representations.rb +1866 -285
  215. data/generated/google/apis/dialogflow_v2/service.rb +12 -4
  216. data/generated/google/apis/dialogflow_v2.rb +1 -1
  217. data/generated/google/apis/dialogflow_v2beta1/classes.rb +4100 -682
  218. data/generated/google/apis/dialogflow_v2beta1/representations.rb +1877 -296
  219. data/generated/google/apis/dialogflow_v2beta1/service.rb +496 -32
  220. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  221. data/generated/google/apis/dialogflow_v3/classes.rb +11752 -0
  222. data/generated/google/apis/dialogflow_v3/representations.rb +5158 -0
  223. data/generated/google/apis/dialogflow_v3/service.rb +3414 -0
  224. data/generated/google/apis/{bigqueryreservation_v1alpha2.rb → dialogflow_v3.rb} +13 -12
  225. data/generated/google/apis/dialogflow_v3beta1/classes.rb +5190 -2229
  226. data/generated/google/apis/dialogflow_v3beta1/representations.rb +1789 -342
  227. data/generated/google/apis/dialogflow_v3beta1/service.rb +591 -2
  228. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  229. data/generated/google/apis/displayvideo_v1/classes.rb +97 -3
  230. data/generated/google/apis/displayvideo_v1/representations.rb +45 -0
  231. data/generated/google/apis/displayvideo_v1/service.rb +103 -39
  232. data/generated/google/apis/displayvideo_v1.rb +1 -1
  233. data/generated/google/apis/dlp_v2/service.rb +297 -10
  234. data/generated/google/apis/dlp_v2.rb +1 -1
  235. data/generated/google/apis/dns_v1/classes.rb +71 -0
  236. data/generated/google/apis/dns_v1/representations.rb +33 -0
  237. data/generated/google/apis/dns_v1.rb +1 -1
  238. data/generated/google/apis/dns_v1beta2/classes.rb +6 -0
  239. data/generated/google/apis/dns_v1beta2/representations.rb +1 -0
  240. data/generated/google/apis/dns_v1beta2.rb +1 -1
  241. data/generated/google/apis/documentai_v1beta2/classes.rb +217 -186
  242. data/generated/google/apis/documentai_v1beta2/representations.rb +107 -24
  243. data/generated/google/apis/documentai_v1beta2.rb +1 -1
  244. data/generated/google/apis/documentai_v1beta3/classes.rb +238 -201
  245. data/generated/google/apis/documentai_v1beta3/representations.rb +107 -24
  246. data/generated/google/apis/documentai_v1beta3/service.rb +81 -2
  247. data/generated/google/apis/documentai_v1beta3.rb +1 -1
  248. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  249. data/generated/google/apis/drive_v2/classes.rb +4 -1
  250. data/generated/google/apis/drive_v2/service.rb +24 -56
  251. data/generated/google/apis/drive_v2.rb +1 -1
  252. data/generated/google/apis/drive_v3/classes.rb +4 -1
  253. data/generated/google/apis/drive_v3/service.rb +14 -30
  254. data/generated/google/apis/drive_v3.rb +1 -1
  255. data/generated/google/apis/eventarc_v1beta1/classes.rb +8 -15
  256. data/generated/google/apis/eventarc_v1beta1/representations.rb +0 -1
  257. data/generated/google/apis/eventarc_v1beta1/service.rb +25 -5
  258. data/generated/google/apis/eventarc_v1beta1.rb +1 -1
  259. data/generated/google/apis/file_v1/classes.rb +61 -0
  260. data/generated/google/apis/file_v1/representations.rb +19 -0
  261. data/generated/google/apis/file_v1.rb +1 -1
  262. data/generated/google/apis/firebasedatabase_v1beta/classes.rb +130 -0
  263. data/generated/google/apis/firebasedatabase_v1beta/representations.rb +82 -0
  264. data/generated/google/apis/firebasedatabase_v1beta/service.rb +292 -0
  265. data/generated/google/apis/firebasedatabase_v1beta.rb +44 -0
  266. data/generated/google/apis/games_v1/classes.rb +67 -14
  267. data/generated/google/apis/games_v1/representations.rb +31 -2
  268. data/generated/google/apis/games_v1/service.rb +33 -0
  269. data/generated/google/apis/games_v1.rb +1 -1
  270. data/generated/google/apis/gameservices_v1/service.rb +14 -14
  271. data/generated/google/apis/gameservices_v1.rb +1 -1
  272. data/generated/google/apis/gameservices_v1beta/service.rb +14 -14
  273. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  274. data/generated/google/apis/genomics_v2alpha1/classes.rb +11 -7
  275. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  276. data/generated/google/apis/gmailpostmastertools_v1beta1/classes.rb +9 -0
  277. data/generated/google/apis/gmailpostmastertools_v1beta1/representations.rb +1 -0
  278. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  279. data/generated/google/apis/healthcare_v1/classes.rb +18 -23
  280. data/generated/google/apis/healthcare_v1/representations.rb +0 -1
  281. data/generated/google/apis/healthcare_v1/service.rb +13 -12
  282. data/generated/google/apis/healthcare_v1.rb +1 -1
  283. data/generated/google/apis/healthcare_v1beta1/classes.rb +63 -36
  284. data/generated/google/apis/healthcare_v1beta1/representations.rb +3 -1
  285. data/generated/google/apis/healthcare_v1beta1/service.rb +37 -37
  286. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  287. data/generated/google/apis/iam_v1/classes.rb +101 -0
  288. data/generated/google/apis/iam_v1/representations.rb +33 -0
  289. data/generated/google/apis/iam_v1/service.rb +62 -0
  290. data/generated/google/apis/iam_v1.rb +1 -1
  291. data/generated/google/apis/iap_v1/classes.rb +0 -6
  292. data/generated/google/apis/iap_v1/representations.rb +0 -1
  293. data/generated/google/apis/iap_v1.rb +1 -1
  294. data/generated/google/apis/iap_v1beta1/classes.rb +0 -6
  295. data/generated/google/apis/iap_v1beta1/representations.rb +0 -1
  296. data/generated/google/apis/iap_v1beta1.rb +1 -1
  297. data/generated/google/apis/jobs_v3/classes.rb +9 -807
  298. data/generated/google/apis/jobs_v3/representations.rb +0 -272
  299. data/generated/google/apis/jobs_v3.rb +1 -1
  300. data/generated/google/apis/jobs_v3p1beta1/classes.rb +9 -768
  301. data/generated/google/apis/jobs_v3p1beta1/representations.rb +0 -257
  302. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  303. data/generated/google/apis/jobs_v4/classes.rb +2699 -0
  304. data/generated/google/apis/jobs_v4/representations.rb +934 -0
  305. data/generated/google/apis/jobs_v4/service.rb +903 -0
  306. data/generated/google/apis/{jobs_v2.rb → jobs_v4.rb} +6 -6
  307. data/generated/google/apis/licensing_v1/classes.rb +26 -8
  308. data/generated/google/apis/licensing_v1/representations.rb +12 -0
  309. data/generated/google/apis/licensing_v1/service.rb +32 -29
  310. data/generated/google/apis/licensing_v1.rb +1 -1
  311. data/generated/google/apis/lifesciences_v2beta/classes.rb +25 -0
  312. data/generated/google/apis/lifesciences_v2beta/representations.rb +15 -0
  313. data/generated/google/apis/lifesciences_v2beta.rb +1 -1
  314. data/generated/google/apis/localservices_v1.rb +4 -1
  315. data/generated/google/apis/logging_v2/classes.rb +5 -4
  316. data/generated/google/apis/logging_v2.rb +1 -1
  317. data/generated/google/apis/managedidentities_v1/classes.rb +16 -11
  318. data/generated/google/apis/managedidentities_v1/representations.rb +0 -1
  319. data/generated/google/apis/managedidentities_v1.rb +1 -1
  320. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +18 -12
  321. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +0 -1
  322. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  323. data/generated/google/apis/managedidentities_v1beta1/classes.rb +4 -7
  324. data/generated/google/apis/managedidentities_v1beta1/representations.rb +0 -1
  325. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  326. data/generated/google/apis/manufacturers_v1/classes.rb +2 -2
  327. data/generated/google/apis/manufacturers_v1.rb +1 -1
  328. data/generated/google/apis/metastore_v1beta/classes.rb +1151 -0
  329. data/generated/google/apis/metastore_v1beta/representations.rb +479 -0
  330. data/generated/google/apis/metastore_v1beta/service.rb +800 -0
  331. data/generated/google/apis/metastore_v1beta.rb +35 -0
  332. data/generated/google/apis/ml_v1/classes.rb +51 -24
  333. data/generated/google/apis/ml_v1/representations.rb +16 -1
  334. data/generated/google/apis/ml_v1.rb +1 -1
  335. data/generated/google/apis/monitoring_v3/classes.rb +15 -10
  336. data/generated/google/apis/monitoring_v3/service.rb +5 -4
  337. data/generated/google/apis/monitoring_v3.rb +1 -1
  338. data/generated/google/apis/notebooks_v1/classes.rb +13 -6
  339. data/generated/google/apis/notebooks_v1/representations.rb +12 -1
  340. data/generated/google/apis/notebooks_v1/service.rb +34 -0
  341. data/generated/google/apis/notebooks_v1.rb +1 -1
  342. data/generated/google/apis/osconfig_v1/classes.rb +419 -0
  343. data/generated/google/apis/osconfig_v1/representations.rb +168 -0
  344. data/generated/google/apis/osconfig_v1.rb +1 -1
  345. data/generated/google/apis/osconfig_v1beta/classes.rb +419 -0
  346. data/generated/google/apis/osconfig_v1beta/representations.rb +168 -0
  347. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  348. data/generated/google/apis/pagespeedonline_v5/service.rb +3 -3
  349. data/generated/google/apis/pagespeedonline_v5.rb +1 -1
  350. data/generated/google/apis/people_v1/classes.rb +6 -2
  351. data/generated/google/apis/people_v1.rb +1 -1
  352. data/generated/google/apis/privateca_v1beta1/classes.rb +2 -1
  353. data/generated/google/apis/privateca_v1beta1.rb +1 -1
  354. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  355. data/generated/google/apis/pubsub_v1/classes.rb +0 -6
  356. data/generated/google/apis/pubsub_v1/representations.rb +0 -1
  357. data/generated/google/apis/pubsub_v1.rb +1 -1
  358. data/generated/google/apis/pubsub_v1beta2/classes.rb +0 -6
  359. data/generated/google/apis/pubsub_v1beta2/representations.rb +0 -1
  360. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  361. data/generated/google/apis/recommendationengine_v1beta1/service.rb +2 -1
  362. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  363. data/generated/google/apis/recommender_v1/classes.rb +2 -2
  364. data/generated/google/apis/recommender_v1.rb +1 -1
  365. data/generated/google/apis/recommender_v1beta1/classes.rb +2 -2
  366. data/generated/google/apis/recommender_v1beta1/service.rb +317 -0
  367. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  368. data/generated/google/apis/redis_v1/classes.rb +2 -2
  369. data/generated/google/apis/redis_v1.rb +1 -1
  370. data/generated/google/apis/redis_v1beta1/classes.rb +2 -2
  371. data/generated/google/apis/redis_v1beta1.rb +1 -1
  372. data/generated/google/apis/remotebuildexecution_v1/classes.rb +5 -30
  373. data/generated/google/apis/remotebuildexecution_v1/representations.rb +1 -16
  374. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  375. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +5 -30
  376. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +1 -16
  377. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  378. data/generated/google/apis/remotebuildexecution_v2/classes.rb +5 -30
  379. data/generated/google/apis/remotebuildexecution_v2/representations.rb +1 -16
  380. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  381. data/generated/google/apis/reseller_v1/service.rb +5 -5
  382. data/generated/google/apis/reseller_v1.rb +4 -4
  383. data/generated/google/apis/run_v1/classes.rb +2 -1
  384. data/generated/google/apis/run_v1.rb +1 -1
  385. data/generated/google/apis/run_v1alpha1/classes.rb +2 -1
  386. data/generated/google/apis/run_v1alpha1.rb +1 -1
  387. data/generated/google/apis/safebrowsing_v4/classes.rb +277 -277
  388. data/generated/google/apis/safebrowsing_v4/representations.rb +128 -128
  389. data/generated/google/apis/safebrowsing_v4/service.rb +44 -44
  390. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  391. data/generated/google/apis/searchconsole_v1/classes.rb +7 -0
  392. data/generated/google/apis/searchconsole_v1/representations.rb +1 -0
  393. data/generated/google/apis/searchconsole_v1.rb +1 -1
  394. data/generated/google/apis/securitycenter_v1/classes.rb +109 -10
  395. data/generated/google/apis/securitycenter_v1/representations.rb +38 -0
  396. data/generated/google/apis/securitycenter_v1/service.rb +1464 -430
  397. data/generated/google/apis/securitycenter_v1.rb +1 -1
  398. data/generated/google/apis/securitycenter_v1beta1/classes.rb +75 -0
  399. data/generated/google/apis/securitycenter_v1beta1/representations.rb +33 -0
  400. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  401. data/generated/google/apis/securitycenter_v1beta2/classes.rb +75 -0
  402. data/generated/google/apis/securitycenter_v1beta2/representations.rb +33 -0
  403. data/generated/google/apis/securitycenter_v1beta2.rb +1 -1
  404. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +11 -10
  405. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  406. data/generated/google/apis/servicecontrol_v1/service.rb +2 -2
  407. data/generated/google/apis/servicecontrol_v1.rb +3 -3
  408. data/generated/google/apis/servicecontrol_v2/service.rb +2 -2
  409. data/generated/google/apis/servicecontrol_v2.rb +3 -3
  410. data/generated/google/apis/servicedirectory_v1/classes.rb +721 -0
  411. data/generated/google/apis/servicedirectory_v1/representations.rb +304 -0
  412. data/generated/google/apis/servicedirectory_v1/service.rb +957 -0
  413. data/generated/google/apis/servicedirectory_v1.rb +35 -0
  414. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +0 -6
  415. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +0 -1
  416. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  417. data/generated/google/apis/servicemanagement_v1/classes.rb +11 -10
  418. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  419. data/generated/google/apis/servicenetworking_v1/classes.rb +57 -4
  420. data/generated/google/apis/servicenetworking_v1/representations.rb +19 -1
  421. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  422. data/generated/google/apis/servicenetworking_v1beta/classes.rb +37 -4
  423. data/generated/google/apis/servicenetworking_v1beta/representations.rb +17 -1
  424. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  425. data/generated/google/apis/serviceusage_v1/classes.rb +11 -10
  426. data/generated/google/apis/serviceusage_v1.rb +1 -1
  427. data/generated/google/apis/serviceusage_v1beta1/classes.rb +11 -10
  428. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  429. data/generated/google/apis/sheets_v4/classes.rb +309 -0
  430. data/generated/google/apis/sheets_v4/representations.rb +99 -0
  431. data/generated/google/apis/sheets_v4.rb +1 -1
  432. data/generated/google/apis/slides_v1/classes.rb +9 -3
  433. data/generated/google/apis/slides_v1.rb +1 -1
  434. data/generated/google/apis/spanner_v1/classes.rb +9 -6
  435. data/generated/google/apis/spanner_v1/representations.rb +1 -1
  436. data/generated/google/apis/spanner_v1.rb +1 -1
  437. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  438. data/generated/google/apis/sqladmin_v1beta4/classes.rb +97 -14
  439. data/generated/google/apis/sqladmin_v1beta4/representations.rb +34 -0
  440. data/generated/google/apis/sqladmin_v1beta4/service.rb +5 -2
  441. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  442. data/generated/google/apis/storage_v1/classes.rb +7 -0
  443. data/generated/google/apis/storage_v1/representations.rb +1 -0
  444. data/generated/google/apis/storage_v1.rb +1 -1
  445. data/generated/google/apis/storagetransfer_v1/classes.rb +39 -16
  446. data/generated/google/apis/storagetransfer_v1/representations.rb +3 -0
  447. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  448. data/generated/google/apis/testing_v1/classes.rb +1 -1
  449. data/generated/google/apis/testing_v1.rb +1 -1
  450. data/generated/google/apis/trafficdirector_v2/service.rb +1 -1
  451. data/generated/google/apis/trafficdirector_v2.rb +2 -2
  452. data/generated/google/apis/transcoder_v1beta1/classes.rb +12 -2
  453. data/generated/google/apis/transcoder_v1beta1/representations.rb +1 -0
  454. data/generated/google/apis/transcoder_v1beta1.rb +1 -1
  455. data/generated/google/apis/translate_v3/classes.rb +1 -1
  456. data/generated/google/apis/translate_v3.rb +1 -1
  457. data/generated/google/apis/translate_v3beta1/classes.rb +1 -1
  458. data/generated/google/apis/translate_v3beta1.rb +1 -1
  459. data/generated/google/apis/vault_v1/classes.rb +76 -0
  460. data/generated/google/apis/vault_v1/representations.rb +45 -0
  461. data/generated/google/apis/vault_v1.rb +1 -1
  462. data/generated/google/apis/vectortile_v1/classes.rb +59 -4
  463. data/generated/google/apis/vectortile_v1/representations.rb +19 -0
  464. data/generated/google/apis/vectortile_v1.rb +1 -1
  465. data/generated/google/apis/videointelligence_v1/classes.rb +65 -0
  466. data/generated/google/apis/videointelligence_v1/representations.rb +15 -0
  467. data/generated/google/apis/videointelligence_v1.rb +1 -1
  468. data/generated/google/apis/videointelligence_v1beta2/classes.rb +65 -0
  469. data/generated/google/apis/videointelligence_v1beta2/representations.rb +15 -0
  470. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  471. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +65 -0
  472. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +15 -0
  473. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  474. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +65 -0
  475. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +15 -0
  476. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  477. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +65 -0
  478. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +15 -0
  479. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  480. data/generated/google/apis/webmasters_v3/classes.rb +8 -0
  481. data/generated/google/apis/webmasters_v3/representations.rb +1 -0
  482. data/generated/google/apis/workflows_v1beta/classes.rb +4 -4
  483. data/generated/google/apis/workflows_v1beta.rb +1 -1
  484. data/generated/google/apis/youtube_v3/classes.rb +20 -145
  485. data/generated/google/apis/youtube_v3/representations.rb +0 -57
  486. data/generated/google/apis/youtube_v3/service.rb +0 -43
  487. data/generated/google/apis/youtube_v3.rb +1 -1
  488. data/lib/google/apis/version.rb +1 -23
  489. metadata +55 -275
  490. data/.github/CONTRIBUTING.md +0 -31
  491. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -36
  492. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -21
  493. data/.github/ISSUE_TEMPLATE/support_request.md +0 -7
  494. data/.github/workflows/autoapprove.yml +0 -49
  495. data/.github/workflows/release-please.yml +0 -77
  496. data/.gitignore +0 -23
  497. data/.kokoro/build.bat +0 -11
  498. data/.kokoro/build.sh +0 -4
  499. data/.kokoro/continuous/common.cfg +0 -25
  500. data/.kokoro/continuous/linux.cfg +0 -25
  501. data/.kokoro/continuous/osx.cfg +0 -8
  502. data/.kokoro/continuous/post.cfg +0 -30
  503. data/.kokoro/continuous/windows.cfg +0 -29
  504. data/.kokoro/osx.sh +0 -4
  505. data/.kokoro/presubmit/common.cfg +0 -24
  506. data/.kokoro/presubmit/linux.cfg +0 -24
  507. data/.kokoro/presubmit/osx.cfg +0 -8
  508. data/.kokoro/presubmit/windows.cfg +0 -29
  509. data/.kokoro/release.cfg +0 -94
  510. data/.kokoro/trampoline.bat +0 -10
  511. data/.kokoro/trampoline.sh +0 -4
  512. data/.repo-metadata.json +0 -5
  513. data/.rspec +0 -2
  514. data/.rubocop.yml +0 -12
  515. data/.rubocop_todo.yml +0 -63
  516. data/CODE_OF_CONDUCT.md +0 -43
  517. data/Gemfile +0 -55
  518. data/MIGRATING.md +0 -215
  519. data/README.md +0 -402
  520. data/Rakefile +0 -131
  521. data/api_list_config.yaml +0 -9
  522. data/api_names.yaml +0 -1082
  523. data/bin/generate-api +0 -194
  524. data/docs/api-keys.md +0 -20
  525. data/docs/auth.md +0 -53
  526. data/docs/client-secrets.md +0 -69
  527. data/docs/getting-started.md +0 -340
  528. data/docs/installation.md +0 -0
  529. data/docs/logging.md +0 -34
  530. data/docs/media-upload.md +0 -25
  531. data/docs/oauth-installed.md +0 -191
  532. data/docs/oauth-server.md +0 -133
  533. data/docs/oauth-web.md +0 -280
  534. data/docs/oauth.md +0 -268
  535. data/docs/pagination.md +0 -29
  536. data/docs/performance.md +0 -25
  537. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +0 -426
  538. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +0 -195
  539. data/generated/google/apis/bigqueryreservation_v1alpha2/service.rb +0 -622
  540. data/generated/google/apis/jobs_v2/classes.rb +0 -4012
  541. data/generated/google/apis/jobs_v2/representations.rb +0 -1396
  542. data/generated/google/apis/jobs_v2/service.rb +0 -693
  543. data/google-api-client.gemspec +0 -36
  544. data/lib/google/api_client/auth/installed_app.rb +0 -143
  545. data/lib/google/api_client/auth/key_utils.rb +0 -94
  546. data/lib/google/api_client/auth/storage.rb +0 -104
  547. data/lib/google/api_client/auth/storages/file_store.rb +0 -57
  548. data/lib/google/api_client/auth/storages/redis_store.rb +0 -59
  549. data/lib/google/api_client/client_secrets.rb +0 -176
  550. data/lib/google/apis/core/api_command.rb +0 -209
  551. data/lib/google/apis/core/base_service.rb +0 -447
  552. data/lib/google/apis/core/batch.rb +0 -236
  553. data/lib/google/apis/core/composite_io.rb +0 -97
  554. data/lib/google/apis/core/download.rb +0 -118
  555. data/lib/google/apis/core/hashable.rb +0 -44
  556. data/lib/google/apis/core/http_command.rb +0 -447
  557. data/lib/google/apis/core/json_representation.rb +0 -153
  558. data/lib/google/apis/core/multipart.rb +0 -135
  559. data/lib/google/apis/core/upload.rb +0 -273
  560. data/lib/google/apis/errors.rb +0 -89
  561. data/lib/google/apis/generator/annotator.rb +0 -339
  562. data/lib/google/apis/generator/helpers.rb +0 -76
  563. data/lib/google/apis/generator/model.rb +0 -187
  564. data/lib/google/apis/generator/template.rb +0 -124
  565. data/lib/google/apis/generator/templates/_class.tmpl +0 -43
  566. data/lib/google/apis/generator/templates/_method.tmpl +0 -92
  567. data/lib/google/apis/generator/templates/_representation.tmpl +0 -51
  568. data/lib/google/apis/generator/templates/_representation_stub.tmpl +0 -17
  569. data/lib/google/apis/generator/templates/_representation_type.tmpl +0 -10
  570. data/lib/google/apis/generator/templates/classes.rb.tmpl +0 -29
  571. data/lib/google/apis/generator/templates/module.rb.tmpl +0 -40
  572. data/lib/google/apis/generator/templates/representations.rb.tmpl +0 -32
  573. data/lib/google/apis/generator/templates/service.rb.tmpl +0 -61
  574. data/lib/google/apis/generator.rb +0 -71
  575. data/lib/google/apis/options.rb +0 -116
  576. data/lib/google/apis.rb +0 -58
  577. data/rakelib/devsite/devsite_builder.rb +0 -126
  578. data/rakelib/devsite/link_checker.rb +0 -64
  579. data/rakelib/devsite/repo_metadata.rb +0 -56
  580. data/rakelib/metrics.rake +0 -22
  581. data/rakelib/rubocop.rake +0 -10
  582. data/rakelib/spec.rake +0 -11
  583. data/rakelib/yard.rake +0 -11
  584. data/samples/cli/.env +0 -4
  585. data/samples/cli/Gemfile +0 -7
  586. data/samples/cli/README.md +0 -51
  587. data/samples/cli/google-api-samples +0 -32
  588. data/samples/cli/lib/base_cli.rb +0 -95
  589. data/samples/cli/lib/samples/adsense.rb +0 -99
  590. data/samples/cli/lib/samples/analytics.rb +0 -80
  591. data/samples/cli/lib/samples/androidpublisher.rb +0 -47
  592. data/samples/cli/lib/samples/bigquery.rb +0 -101
  593. data/samples/cli/lib/samples/calendar.rb +0 -83
  594. data/samples/cli/lib/samples/drive.rb +0 -82
  595. data/samples/cli/lib/samples/gmail.rb +0 -157
  596. data/samples/cli/lib/samples/pubsub.rb +0 -114
  597. data/samples/cli/lib/samples/sheets.rb +0 -61
  598. data/samples/cli/lib/samples/translate.rb +0 -44
  599. data/samples/cli/lib/samples/vision.rb +0 -69
  600. data/samples/cli/lib/samples/you_tube.rb +0 -47
  601. data/samples/web/Gemfile +0 -9
  602. data/samples/web/README.md +0 -44
  603. data/samples/web/app.rb +0 -120
  604. data/samples/web/views/calendar.erb +0 -34
  605. data/samples/web/views/drive.erb +0 -33
  606. data/samples/web/views/home.erb +0 -34
  607. data/samples/web/views/layout.erb +0 -40
  608. data/synth.py +0 -40
@@ -22,21 +22,197 @@ module Google
22
22
  module Apis
23
23
  module DialogflowV2
24
24
 
25
- # Represents page information communicated to and from the webhook.
26
- class GoogleCloudDialogflowCxV3PageInfo
25
+ # Represents the natural speech audio to be processed.
26
+ class GoogleCloudDialogflowCxV3AudioInput
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
- # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
30
- # identifier of the current page. Format: `projects//locations//agents//flows//
31
- # pages/`.
32
- # Corresponds to the JSON property `currentPage`
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.
33
37
  # @return [String]
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
44
+
45
+ def initialize(**args)
46
+ update!(**args)
47
+ end
48
+
49
+ # Update properties of this object
50
+ def update!(**args)
51
+ @audio = args[:audio] if args.key?(:audio)
52
+ @config = args[:config] if args.key?(:config)
53
+ end
54
+ end
55
+
56
+ # Metadata returned for the TestCases.BatchRunTestCases long running operation.
57
+ class GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
58
+ include Google::Apis::Core::Hashable
59
+
60
+ # The test errors.
61
+ # Corresponds to the JSON property `errors`
62
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3TestError>]
63
+ attr_accessor :errors
64
+
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
84
+
85
+ def initialize(**args)
86
+ update!(**args)
87
+ end
88
+
89
+ # Update properties of this object
90
+ def update!(**args)
91
+ @results = args[:results] if args.key?(:results)
92
+ end
93
+ end
94
+
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
98
+ include Google::Apis::Core::Hashable
99
+
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
104
+
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
109
+
110
+ def initialize(**args)
111
+ update!(**args)
112
+ end
113
+
114
+ # Update properties of this object
115
+ def update!(**args)
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)
118
+ end
119
+ end
120
+
121
+ # The input from the human user.
122
+ class GoogleCloudDialogflowCxV3ConversationTurnUserInput
123
+ include Google::Apis::Core::Hashable
124
+
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
145
+
146
+ def initialize(**args)
147
+ update!(**args)
148
+ end
149
+
150
+ # Update properties of this object
151
+ def update!(**args)
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)
155
+ end
156
+ end
157
+
158
+ # The output from the virtual agent.
159
+ class GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
160
+ include Google::Apis::Core::Hashable
161
+
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]
34
176
  attr_accessor :current_page
35
177
 
36
- # Represents form information.
37
- # Corresponds to the JSON property `formInfo`
38
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfoFormInfo]
39
- attr_accessor :form_info
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
182
+
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
188
+
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
193
+
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
40
216
 
41
217
  def initialize(**args)
42
218
  update!(**args)
@@ -45,19 +221,23 @@ module Google
45
221
  # Update properties of this object
46
222
  def update!(**args)
47
223
  @current_page = args[:current_page] if args.key?(:current_page)
48
- @form_info = args[:form_info] if args.key?(:form_info)
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)
49
230
  end
50
231
  end
51
232
 
52
- # Represents form information.
53
- class GoogleCloudDialogflowCxV3PageInfoFormInfo
233
+ # Metadata for CreateDocument operation.
234
+ class GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata
54
235
  include Google::Apis::Core::Hashable
55
236
 
56
- # Optional for both WebhookRequest and WebhookResponse. The parameters contained
57
- # in the form. Note that the webhook cannot add or remove any form parameter.
58
- # Corresponds to the JSON property `parameterInfo`
59
- # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo>]
60
- attr_accessor :parameter_info
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
61
241
 
62
242
  def initialize(**args)
63
243
  update!(**args)
@@ -65,49 +245,62 @@ module Google
65
245
 
66
246
  # Update properties of this object
67
247
  def update!(**args)
68
- @parameter_info = args[:parameter_info] if args.key?(:parameter_info)
248
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
69
249
  end
70
250
  end
71
251
 
72
- # Represents parameter information.
73
- class GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
252
+ # Metadata associated with the long running operation for Versions.CreateVersion.
253
+ class GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
74
254
  include Google::Apis::Core::Hashable
75
255
 
76
- # Always present for WebhookRequest. Required for WebhookResponse. The human-
77
- # readable name of the parameter, unique within the form. This field cannot be
78
- # modified by the webhook.
79
- # Corresponds to the JSON property `displayName`
256
+ # Name of the created version. Format: `projects//locations//agents//flows//
257
+ # versions/`.
258
+ # Corresponds to the JSON property `version`
80
259
  # @return [String]
81
- attr_accessor :display_name
260
+ attr_accessor :version
82
261
 
83
- # Optional for WebhookRequest. Ignored for WebhookResponse. Indicates if the
84
- # parameter value was just collected on the last conversation turn.
85
- # Corresponds to the JSON property `justCollected`
86
- # @return [Boolean]
87
- attr_accessor :just_collected
88
- alias_method :just_collected?, :just_collected
262
+ def initialize(**args)
263
+ update!(**args)
264
+ end
89
265
 
90
- # Optional for both WebhookRequest and WebhookResponse. Indicates whether the
91
- # parameter is required. Optional parameters will not trigger prompts; however,
92
- # they are filled if the user specifies them. Required parameters must be filled
93
- # before form filling concludes.
94
- # Corresponds to the JSON property `required`
95
- # @return [Boolean]
96
- attr_accessor :required
97
- alias_method :required?, :required
266
+ # Update properties of this object
267
+ def update!(**args)
268
+ @version = args[:version] if args.key?(:version)
269
+ end
270
+ end
98
271
 
99
- # Always present for WebhookRequest. Required for WebhookResponse. The state of
100
- # the parameter. This field can be set to INVALID by the webhook to invalidate
101
- # the parameter; other values set by the webhook will be ignored.
102
- # Corresponds to the JSON property `state`
272
+ # Metadata for DeleteDocument operation.
273
+ class GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata
274
+ include Google::Apis::Core::Hashable
275
+
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
+
281
+ def initialize(**args)
282
+ update!(**args)
283
+ end
284
+
285
+ # Update properties of this object
286
+ def update!(**args)
287
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
288
+ end
289
+ end
290
+
291
+ # Represents the input for dtmf event.
292
+ class GoogleCloudDialogflowCxV3DtmfInput
293
+ include Google::Apis::Core::Hashable
294
+
295
+ # The dtmf digits.
296
+ # Corresponds to the JSON property `digits`
103
297
  # @return [String]
104
- attr_accessor :state
298
+ attr_accessor :digits
105
299
 
106
- # Optional for both WebhookRequest and WebhookResponse. The value of the
107
- # parameter. This field can be set by the webhook to change the parameter value.
108
- # Corresponds to the JSON property `value`
109
- # @return [Object]
110
- attr_accessor :value
300
+ # The finish digit (if any).
301
+ # Corresponds to the JSON property `finishDigit`
302
+ # @return [String]
303
+ attr_accessor :finish_digit
111
304
 
112
305
  def initialize(**args)
113
306
  update!(**args)
@@ -115,87 +308,2587 @@ module Google
115
308
 
116
309
  # Update properties of this object
117
310
  def update!(**args)
118
- @display_name = args[:display_name] if args.key?(:display_name)
119
- @just_collected = args[:just_collected] if args.key?(:just_collected)
120
- @required = args[:required] if args.key?(:required)
121
- @state = args[:state] if args.key?(:state)
122
- @value = args[:value] if args.key?(:value)
311
+ @digits = args[:digits] if args.key?(:digits)
312
+ @finish_digit = args[:finish_digit] if args.key?(:finish_digit)
123
313
  end
124
314
  end
125
315
 
126
- # Represents a response message that can be returned by a conversational agent.
127
- # Response messages are also used for output audio synthesis. The approach is as
128
- # follows: * If at least one OutputAudioText response is present, then all
129
- # OutputAudioText responses are linearly concatenated, and the result is used
130
- # for output audio synthesis. * If the OutputAudioText responses are a mixture
131
- # of text and SSML, then the concatenated result is treated as SSML; otherwise,
132
- # the result is treated as either text or SSML as appropriate. The agent
133
- # designer should ideally use either text or SSML consistently throughout the
134
- # bot design. * Otherwise, all Text responses are linearly concatenated, and the
135
- # result is used for output audio synthesis. This approach allows for more
136
- # sophisticated user experience scenarios, where the text displayed to the user
137
- # may differ from what is heard.
138
- class GoogleCloudDialogflowCxV3ResponseMessage
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
139
323
  include Google::Apis::Core::Hashable
140
324
 
141
- # Indicates that the conversation succeeded, i.e., the bot handled the issue
142
- # that the customer talked to it about. Dialogflow only uses this to determine
143
- # which conversations should be counted as successful and doesn't process the
144
- # metadata in this message in any way. Note that Dialogflow also considers
145
- # conversations that get to the conversation end page as successful even if they
146
- # don't return ConversationSuccess. You may set this, for example: * In the
147
- # entry_fulfillment of a Page if entering the page indicates that the
148
- # conversation succeeded. * In a webhook response when you determine that you
149
- # handled the customer issue.
150
- # Corresponds to the JSON property `conversationSuccess`
151
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess]
152
- attr_accessor :conversation_success
325
+ # Required. The name of the event to handle.
326
+ # Corresponds to the JSON property `event`
327
+ # @return [String]
328
+ attr_accessor :event
153
329
 
154
- # Indicates that interaction with the Dialogflow agent has ended. This message
155
- # is generated by Dialogflow only and not supposed to be defined by the user.
156
- # Corresponds to the JSON property `endInteraction`
157
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageEndInteraction]
158
- attr_accessor :end_interaction
330
+ # Output only. The unique identifier of this event handler.
331
+ # Corresponds to the JSON property `name`
332
+ # @return [String]
333
+ attr_accessor :name
159
334
 
160
- # Indicates that the conversation should be handed off to a live agent.
161
- # Dialogflow only uses this to determine which conversations were handed off to
162
- # a human agent for measurement purposes. What else to do with this signal is up
163
- # to you and your handoff procedures. You may set this, for example: * In the
164
- # entry_fulfillment of a Page if entering the page indicates something went
165
- # extremely wrong in the conversation. * In a webhook response when you
166
- # determine that the customer issue can only be handled by a human.
167
- # Corresponds to the JSON property `liveAgentHandoff`
168
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff]
169
- attr_accessor :live_agent_handoff
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
170
340
 
171
- # Represents an audio message that is composed of both segments synthesized from
172
- # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
173
- # The external URIs are specified via play_audio. This message is generated by
174
- # Dialogflow only and not supposed to be defined by the user.
175
- # Corresponds to the JSON property `mixedAudio`
176
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageMixedAudio]
177
- attr_accessor :mixed_audio
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
178
346
 
179
- # A text or ssml response that is preferentially used for TTS output audio
180
- # synthesis, as described in the comment on the ResponseMessage message.
181
- # Corresponds to the JSON property `outputAudioText`
182
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText]
183
- attr_accessor :output_audio_text
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
184
2853
 
185
- # Returns a response containing a custom, platform-specific payload.
186
- # Corresponds to the JSON property `payload`
187
- # @return [Hash<String,Object>]
188
- attr_accessor :payload
2854
+ # Configuration for how the filling of a parameter should be handled.
2855
+ class GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
2856
+ include Google::Apis::Core::Hashable
189
2857
 
190
- # Specifies an audio clip to be played by the client as part of the response.
191
- # Corresponds to the JSON property `playAudio`
192
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessagePlayAudio]
193
- attr_accessor :play_audio
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
194
2868
 
195
- # The text response message.
196
- # Corresponds to the JSON property `text`
197
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageText]
198
- attr_accessor :text
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
199
2892
 
200
2893
  def initialize(**args)
201
2894
  update!(**args)
@@ -203,33 +2896,46 @@ module Google
203
2896
 
204
2897
  # Update properties of this object
205
2898
  def update!(**args)
206
- @conversation_success = args[:conversation_success] if args.key?(:conversation_success)
207
- @end_interaction = args[:end_interaction] if args.key?(:end_interaction)
208
- @live_agent_handoff = args[:live_agent_handoff] if args.key?(:live_agent_handoff)
209
- @mixed_audio = args[:mixed_audio] if args.key?(:mixed_audio)
210
- @output_audio_text = args[:output_audio_text] if args.key?(:output_audio_text)
211
- @payload = args[:payload] if args.key?(:payload)
212
- @play_audio = args[:play_audio] if args.key?(:play_audio)
213
- @text = args[:text] if args.key?(:text)
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)
214
2901
  end
215
2902
  end
216
2903
 
217
- # Indicates that the conversation succeeded, i.e., the bot handled the issue
218
- # that the customer talked to it about. Dialogflow only uses this to determine
219
- # which conversations should be counted as successful and doesn't process the
220
- # metadata in this message in any way. Note that Dialogflow also considers
221
- # conversations that get to the conversation end page as successful even if they
222
- # don't return ConversationSuccess. You may set this, for example: * In the
223
- # entry_fulfillment of a Page if entering the page indicates that the
224
- # conversation succeeded. * In a webhook response when you determine that you
225
- # handled the customer issue.
226
- class GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
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
227
2912
  include Google::Apis::Core::Hashable
228
2913
 
229
- # Custom metadata. Dialogflow doesn't impose any structure on this.
230
- # Corresponds to the JSON property `metadata`
231
- # @return [Hash<String,Object>]
232
- attr_accessor :metadata
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
233
2939
 
234
2940
  def initialize(**args)
235
2941
  update!(**args)
@@ -237,39 +2943,51 @@ module Google
237
2943
 
238
2944
  # Update properties of this object
239
2945
  def update!(**args)
240
- @metadata = args[:metadata] if args.key?(:metadata)
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)
241
2951
  end
242
2952
  end
243
2953
 
244
- # Indicates that interaction with the Dialogflow agent has ended. This message
245
- # is generated by Dialogflow only and not supposed to be defined by the user.
246
- class GoogleCloudDialogflowCxV3ResponseMessageEndInteraction
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
247
2957
  include Google::Apis::Core::Hashable
248
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
+
249
2964
  def initialize(**args)
250
2965
  update!(**args)
251
2966
  end
252
2967
 
253
2968
  # Update properties of this object
254
2969
  def update!(**args)
2970
+ @cases = args[:cases] if args.key?(:cases)
255
2971
  end
256
2972
  end
257
2973
 
258
- # Indicates that the conversation should be handed off to a live agent.
259
- # Dialogflow only uses this to determine which conversations were handed off to
260
- # a human agent for measurement purposes. What else to do with this signal is up
261
- # to you and your handoff procedures. You may set this, for example: * In the
262
- # entry_fulfillment of a Page if entering the page indicates something went
263
- # extremely wrong in the conversation. * In a webhook response when you
264
- # determine that the customer issue can only be handled by a human.
265
- class GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
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
266
2977
  include Google::Apis::Core::Hashable
267
2978
 
268
- # Custom metadata for your handoff procedure. Dialogflow doesn't impose any
269
- # structure on this.
270
- # Corresponds to the JSON property `metadata`
271
- # @return [Hash<String,Object>]
272
- attr_accessor :metadata
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
273
2991
 
274
2992
  def initialize(**args)
275
2993
  update!(**args)
@@ -277,21 +2995,36 @@ module Google
277
2995
 
278
2996
  # Update properties of this object
279
2997
  def update!(**args)
280
- @metadata = args[:metadata] if args.key?(:metadata)
2998
+ @case_content = args[:case_content] if args.key?(:case_content)
2999
+ @condition = args[:condition] if args.key?(:condition)
281
3000
  end
282
3001
  end
283
3002
 
284
- # Represents an audio message that is composed of both segments synthesized from
285
- # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
286
- # The external URIs are specified via play_audio. This message is generated by
287
- # Dialogflow only and not supposed to be defined by the user.
288
- class GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
3003
+ # The list of messages or conditional cases to activate for this case.
3004
+ class GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
289
3005
  include Google::Apis::Core::Hashable
290
3006
 
291
- # Segments this audio response is composed of.
292
- # Corresponds to the JSON property `segments`
293
- # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment>]
294
- attr_accessor :segments
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
295
3028
 
296
3029
  def initialize(**args)
297
3030
  update!(**args)
@@ -299,33 +3032,24 @@ module Google
299
3032
 
300
3033
  # Update properties of this object
301
3034
  def update!(**args)
302
- @segments = args[:segments] if args.key?(:segments)
3035
+ @additional_cases = args[:additional_cases] if args.key?(:additional_cases)
3036
+ @message = args[:message] if args.key?(:message)
303
3037
  end
304
3038
  end
305
3039
 
306
- # Represents one segment of audio.
307
- class GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
3040
+ # Setting a parameter value.
3041
+ class GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
308
3042
  include Google::Apis::Core::Hashable
309
3043
 
310
- # Output only. Whether the playback of this segment can be interrupted by the
311
- # end user's speech and the client should then start the next Dialogflow request.
312
- # Corresponds to the JSON property `allowPlaybackInterruption`
313
- # @return [Boolean]
314
- attr_accessor :allow_playback_interruption
315
- alias_method :allow_playback_interruption?, :allow_playback_interruption
316
-
317
- # Raw audio synthesized from the Dialogflow agent's response using the output
318
- # config specified in the request.
319
- # Corresponds to the JSON property `audio`
320
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
3044
+ # Display name of the parameter.
3045
+ # Corresponds to the JSON property `parameter`
321
3046
  # @return [String]
322
- attr_accessor :audio
3047
+ attr_accessor :parameter
323
3048
 
324
- # Client-specific URI that points to an audio clip accessible to the client.
325
- # Dialogflow does not impose any validation on it.
326
- # Corresponds to the JSON property `uri`
327
- # @return [String]
328
- attr_accessor :uri
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
329
3053
 
330
3054
  def initialize(**args)
331
3055
  update!(**args)
@@ -333,34 +3057,19 @@ module Google
333
3057
 
334
3058
  # Update properties of this object
335
3059
  def update!(**args)
336
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
337
- @audio = args[:audio] if args.key?(:audio)
338
- @uri = args[:uri] if args.key?(:uri)
3060
+ @parameter = args[:parameter] if args.key?(:parameter)
3061
+ @value = args[:value] if args.key?(:value)
339
3062
  end
340
3063
  end
341
3064
 
342
- # A text or ssml response that is preferentially used for TTS output audio
343
- # synthesis, as described in the comment on the ResponseMessage message.
344
- class GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
3065
+ # Metadata in google::longrunning::Operation for Knowledge operations.
3066
+ class GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata
345
3067
  include Google::Apis::Core::Hashable
346
3068
 
347
- # Output only. Whether the playback of this message can be interrupted by the
348
- # end user's speech and the client can then starts the next Dialogflow request.
349
- # Corresponds to the JSON property `allowPlaybackInterruption`
350
- # @return [Boolean]
351
- attr_accessor :allow_playback_interruption
352
- alias_method :allow_playback_interruption?, :allow_playback_interruption
353
-
354
- # The SSML text to be synthesized. For more information, see [SSML](/speech/text-
355
- # to-speech/docs/ssml).
356
- # Corresponds to the JSON property `ssml`
357
- # @return [String]
358
- attr_accessor :ssml
359
-
360
- # The raw text to be synthesized.
361
- # Corresponds to the JSON property `text`
3069
+ # Required. Output only. The current state of this operation.
3070
+ # Corresponds to the JSON property `state`
362
3071
  # @return [String]
363
- attr_accessor :text
3072
+ attr_accessor :state
364
3073
 
365
3074
  def initialize(**args)
366
3075
  update!(**args)
@@ -368,28 +3077,18 @@ module Google
368
3077
 
369
3078
  # Update properties of this object
370
3079
  def update!(**args)
371
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
372
- @ssml = args[:ssml] if args.key?(:ssml)
373
- @text = args[:text] if args.key?(:text)
3080
+ @state = args[:state] if args.key?(:state)
374
3081
  end
375
3082
  end
376
3083
 
377
- # Specifies an audio clip to be played by the client as part of the response.
378
- class GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
3084
+ # Metadata for ImportDocuments operation.
3085
+ class GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata
379
3086
  include Google::Apis::Core::Hashable
380
3087
 
381
- # Output only. Whether the playback of this message can be interrupted by the
382
- # end user's speech and the client can then starts the next Dialogflow request.
383
- # Corresponds to the JSON property `allowPlaybackInterruption`
384
- # @return [Boolean]
385
- attr_accessor :allow_playback_interruption
386
- alias_method :allow_playback_interruption?, :allow_playback_interruption
387
-
388
- # Required. URI of the audio clip. Dialogflow does not impose any validation on
389
- # this value. It is specific to the client that reads it.
390
- # Corresponds to the JSON property `audioUri`
391
- # @return [String]
392
- attr_accessor :audio_uri
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
393
3092
 
394
3093
  def initialize(**args)
395
3094
  update!(**args)
@@ -397,26 +3096,18 @@ module Google
397
3096
 
398
3097
  # Update properties of this object
399
3098
  def update!(**args)
400
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
401
- @audio_uri = args[:audio_uri] if args.key?(:audio_uri)
3099
+ @generic_metadata = args[:generic_metadata] if args.key?(:generic_metadata)
402
3100
  end
403
3101
  end
404
3102
 
405
- # The text response message.
406
- class GoogleCloudDialogflowCxV3ResponseMessageText
3103
+ # Response message for Documents.ImportDocuments.
3104
+ class GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse
407
3105
  include Google::Apis::Core::Hashable
408
3106
 
409
- # Output only. Whether the playback of this message can be interrupted by the
410
- # end user's speech and the client can then starts the next Dialogflow request.
411
- # Corresponds to the JSON property `allowPlaybackInterruption`
412
- # @return [Boolean]
413
- attr_accessor :allow_playback_interruption
414
- alias_method :allow_playback_interruption?, :allow_playback_interruption
415
-
416
- # Required. A collection of text responses.
417
- # Corresponds to the JSON property `text`
418
- # @return [Array<String>]
419
- attr_accessor :text
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
420
3111
 
421
3112
  def initialize(**args)
422
3113
  update!(**args)
@@ -424,30 +3115,38 @@ module Google
424
3115
 
425
3116
  # Update properties of this object
426
3117
  def update!(**args)
427
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
428
- @text = args[:text] if args.key?(:text)
3118
+ @warnings = args[:warnings] if args.key?(:warnings)
429
3119
  end
430
3120
  end
431
3121
 
432
- # Represents session information communicated to and from the webhook.
433
- class GoogleCloudDialogflowCxV3SessionInfo
3122
+ # Metadata returned for the TestCases.ImportTestCases long running operation.
3123
+ class GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
434
3124
  include Google::Apis::Core::Hashable
435
3125
 
436
- # Optional for WebhookRequest. Optional for WebhookResponse. All parameters
437
- # collected from forms and intents during the session. Parameters can be created,
438
- # updated, or removed by the webhook. To remove a parameter from the session,
439
- # the webhook should explicitly set the parameter value to null in
440
- # WebhookResponse. The map is keyed by parameters' display names.
441
- # Corresponds to the JSON property `parameters`
442
- # @return [Hash<String,Object>]
443
- attr_accessor :parameters
3126
+ # Errors for failed test cases.
3127
+ # Corresponds to the JSON property `errors`
3128
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1TestCaseError>]
3129
+ attr_accessor :errors
444
3130
 
445
- # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
446
- # identifier of the session. This field can be used by the webhook to identify a
447
- # user. Format: `projects//locations//agents//sessions/`.
448
- # Corresponds to the JSON property `session`
449
- # @return [String]
450
- attr_accessor :session
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
451
3150
 
452
3151
  def initialize(**args)
453
3152
  update!(**args)
@@ -455,51 +3154,70 @@ module Google
455
3154
 
456
3155
  # Update properties of this object
457
3156
  def update!(**args)
458
- @parameters = args[:parameters] if args.key?(:parameters)
459
- @session = args[:session] if args.key?(:session)
3157
+ @names = args[:names] if args.key?(:names)
460
3158
  end
461
3159
  end
462
3160
 
463
- # The request message for a webhook call.
464
- class GoogleCloudDialogflowCxV3WebhookRequest
3161
+ # Instructs the speech recognizer on how to process the audio content.
3162
+ class GoogleCloudDialogflowCxV3beta1InputAudioConfig
465
3163
  include Google::Apis::Core::Hashable
466
3164
 
467
- # Always present. The unique identifier of the DetectIntentResponse that will be
468
- # returned to the API caller.
469
- # Corresponds to the JSON property `detectIntentResponseId`
3165
+ # Required. Audio encoding of the audio content to process.
3166
+ # Corresponds to the JSON property `audioEncoding`
470
3167
  # @return [String]
471
- attr_accessor :detect_intent_response_id
472
-
473
- # Represents fulfillment information communicated to the webhook.
474
- # Corresponds to the JSON property `fulfillmentInfo`
475
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo]
476
- attr_accessor :fulfillment_info
3168
+ attr_accessor :audio_encoding
477
3169
 
478
- # Represents intent information communicated to the webhook.
479
- # Corresponds to the JSON property `intentInfo`
480
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookRequestIntentInfo]
481
- attr_accessor :intent_info
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
482
3178
 
483
- # The list of rich message responses to present to the user. Webhook can choose
484
- # to append or replace this list in WebhookResponse.fulfillment_response;
485
- # Corresponds to the JSON property `messages`
486
- # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessage>]
487
- attr_accessor :messages
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
488
3190
 
489
- # Represents page information communicated to and from the webhook.
490
- # Corresponds to the JSON property `pageInfo`
491
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfo]
492
- attr_accessor :page_info
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
493
3195
 
494
- # Custom data set in QueryParameters.payload.
495
- # Corresponds to the JSON property `payload`
496
- # @return [Hash<String,Object>]
497
- attr_accessor :payload
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
498
3203
 
499
- # Represents session information communicated to and from the webhook.
500
- # Corresponds to the JSON property `sessionInfo`
501
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3SessionInfo]
502
- attr_accessor :session_info
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
503
3221
 
504
3222
  def initialize(**args)
505
3223
  update!(**args)
@@ -507,78 +3225,110 @@ module Google
507
3225
 
508
3226
  # Update properties of this object
509
3227
  def update!(**args)
510
- @detect_intent_response_id = args[:detect_intent_response_id] if args.key?(:detect_intent_response_id)
511
- @fulfillment_info = args[:fulfillment_info] if args.key?(:fulfillment_info)
512
- @intent_info = args[:intent_info] if args.key?(:intent_info)
513
- @messages = args[:messages] if args.key?(:messages)
514
- @page_info = args[:page_info] if args.key?(:page_info)
515
- @payload = args[:payload] if args.key?(:payload)
516
- @session_info = args[:session_info] if args.key?(:session_info)
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)
517
3235
  end
518
3236
  end
519
3237
 
520
- # Represents fulfillment information communicated to the webhook.
521
- class GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
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
522
3243
  include Google::Apis::Core::Hashable
523
3244
 
524
- # Always present. The tag used to identify which fulfillment is being called.
525
- # Corresponds to the JSON property `tag`
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`
526
3248
  # @return [String]
527
- attr_accessor :tag
3249
+ attr_accessor :description
528
3250
 
529
- def initialize(**args)
530
- update!(**args)
531
- end
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
532
3255
 
533
- # Update properties of this object
534
- def update!(**args)
535
- @tag = args[:tag] if args.key?(:tag)
536
- end
537
- end
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
538
3265
 
539
- # Represents intent information communicated to the webhook.
540
- class GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
541
- include Google::Apis::Core::Hashable
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
542
3277
 
543
- # Always present. The unique identifier of the last matched intent. Format: `
3278
+ # The unique identifier of the intent. Required for the Intents.UpdateIntent
3279
+ # method. Intents.CreateIntent populates the name automatically. Format: `
544
3280
  # projects//locations//agents//intents/`.
545
- # Corresponds to the JSON property `lastMatchedIntent`
3281
+ # Corresponds to the JSON property `name`
546
3282
  # @return [String]
547
- attr_accessor :last_matched_intent
3283
+ attr_accessor :name
548
3284
 
549
- # Parameters identified as a result of intent matching. This is a map of the
550
- # name of the identified parameter to the value of the parameter identified from
551
- # the user's utterance. All parameters defined in the matched intent that are
552
- # identified will be surfaced here.
3285
+ # The collection of parameters associated with the intent.
553
3286
  # Corresponds to the JSON property `parameters`
554
- # @return [Hash<String,Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue>]
3287
+ # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1IntentParameter>]
555
3288
  attr_accessor :parameters
556
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
+
557
3305
  def initialize(**args)
558
3306
  update!(**args)
559
3307
  end
560
3308
 
561
3309
  # Update properties of this object
562
3310
  def update!(**args)
563
- @last_matched_intent = args[:last_matched_intent] if args.key?(:last_matched_intent)
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)
564
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)
565
3319
  end
566
3320
  end
567
3321
 
568
- # Represents a value for an intent parameter.
569
- class GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
3322
+ # Represents the intent to trigger programmatically rather than as a result of
3323
+ # natural language processing.
3324
+ class GoogleCloudDialogflowCxV3beta1IntentInput
570
3325
  include Google::Apis::Core::Hashable
571
3326
 
572
- # Always present. Original text value extracted from user utterance.
573
- # Corresponds to the JSON property `originalValue`
3327
+ # Required. The unique identifier of the intent. Format: `projects//locations//
3328
+ # agents//intents/`.
3329
+ # Corresponds to the JSON property `intent`
574
3330
  # @return [String]
575
- attr_accessor :original_value
576
-
577
- # Always present. Structured value for the parameter extracted from user
578
- # utterance.
579
- # Corresponds to the JSON property `resolvedValue`
580
- # @return [Object]
581
- attr_accessor :resolved_value
3331
+ attr_accessor :intent
582
3332
 
583
3333
  def initialize(**args)
584
3334
  update!(**args)
@@ -586,46 +3336,41 @@ module Google
586
3336
 
587
3337
  # Update properties of this object
588
3338
  def update!(**args)
589
- @original_value = args[:original_value] if args.key?(:original_value)
590
- @resolved_value = args[:resolved_value] if args.key?(:resolved_value)
3339
+ @intent = args[:intent] if args.key?(:intent)
591
3340
  end
592
3341
  end
593
3342
 
594
- # The response message for a webhook call.
595
- class GoogleCloudDialogflowCxV3WebhookResponse
3343
+ # Represents an intent parameter.
3344
+ class GoogleCloudDialogflowCxV3beta1IntentParameter
596
3345
  include Google::Apis::Core::Hashable
597
3346
 
598
- # Represents a fulfillment response to the user.
599
- # Corresponds to the JSON property `fulfillmentResponse`
600
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse]
601
- attr_accessor :fulfillment_response
602
-
603
- # Represents page information communicated to and from the webhook.
604
- # Corresponds to the JSON property `pageInfo`
605
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3PageInfo]
606
- attr_accessor :page_info
607
-
608
- # Value to append directly to QueryResult.webhook_payloads.
609
- # Corresponds to the JSON property `payload`
610
- # @return [Hash<String,Object>]
611
- attr_accessor :payload
612
-
613
- # Represents session information communicated to and from the webhook.
614
- # Corresponds to the JSON property `sessionInfo`
615
- # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3SessionInfo]
616
- attr_accessor :session_info
617
-
618
- # The target flow to transition to. Format: `projects//locations//agents//flows/`
619
- # .
620
- # Corresponds to the JSON property `targetFlow`
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`
621
3352
  # @return [String]
622
- attr_accessor :target_flow
3353
+ attr_accessor :entity_type
623
3354
 
624
- # The target page to transition to. Format: `projects//locations//agents//flows//
625
- # pages/`.
626
- # Corresponds to the JSON property `targetPage`
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`
627
3358
  # @return [String]
628
- attr_accessor :target_page
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
629
3374
 
630
3375
  def initialize(**args)
631
3376
  update!(**args)
@@ -633,28 +3378,41 @@ module Google
633
3378
 
634
3379
  # Update properties of this object
635
3380
  def update!(**args)
636
- @fulfillment_response = args[:fulfillment_response] if args.key?(:fulfillment_response)
637
- @page_info = args[:page_info] if args.key?(:page_info)
638
- @payload = args[:payload] if args.key?(:payload)
639
- @session_info = args[:session_info] if args.key?(:session_info)
640
- @target_flow = args[:target_flow] if args.key?(:target_flow)
641
- @target_page = args[:target_page] if args.key?(:target_page)
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)
642
3385
  end
643
3386
  end
644
3387
 
645
- # Represents a fulfillment response to the user.
646
- class GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
3388
+ # Represents an example that the agent is trained on to identify the intent.
3389
+ class GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
647
3390
  include Google::Apis::Core::Hashable
648
3391
 
649
- # Merge behavior for `messages`.
650
- # Corresponds to the JSON property `mergeBehavior`
3392
+ # Output only. The unique identifier of the training phrase.
3393
+ # Corresponds to the JSON property `id`
651
3394
  # @return [String]
652
- attr_accessor :merge_behavior
3395
+ attr_accessor :id
653
3396
 
654
- # The list of rich message responses to present to the user.
655
- # Corresponds to the JSON property `messages`
656
- # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3ResponseMessage>]
657
- attr_accessor :messages
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
658
3416
 
659
3417
  def initialize(**args)
660
3418
  update!(**args)
@@ -662,20 +3420,26 @@ module Google
662
3420
 
663
3421
  # Update properties of this object
664
3422
  def update!(**args)
665
- @merge_behavior = args[:merge_behavior] if args.key?(:merge_behavior)
666
- @messages = args[:messages] if args.key?(:messages)
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)
667
3426
  end
668
3427
  end
669
3428
 
670
- # Metadata associated with the long running operation for Versions.CreateVersion.
671
- class GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
3429
+ # Represents a part of a training phrase.
3430
+ class GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
672
3431
  include Google::Apis::Core::Hashable
673
3432
 
674
- # Name of the created version. Format: `projects//locations//agents//flows//
675
- # versions/`.
676
- # Corresponds to the JSON property `version`
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`
677
3436
  # @return [String]
678
- attr_accessor :version
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
679
3443
 
680
3444
  def initialize(**args)
681
3445
  update!(**args)
@@ -683,25 +3447,85 @@ module Google
683
3447
 
684
3448
  # Update properties of this object
685
3449
  def update!(**args)
686
- @version = args[:version] if args.key?(:version)
3450
+ @parameter_id = args[:parameter_id] if args.key?(:parameter_id)
3451
+ @text = args[:text] if args.key?(:text)
687
3452
  end
688
3453
  end
689
3454
 
690
- # The response message for Agents.ExportAgent.
691
- class GoogleCloudDialogflowCxV3beta1ExportAgentResponse
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
692
3468
  include Google::Apis::Core::Hashable
693
3469
 
694
- # Uncompressed raw byte content for agent.
695
- # Corresponds to the JSON property `agentContent`
696
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
3470
+ # Required. The human-readable name of the page, unique within the agent.
3471
+ # Corresponds to the JSON property `displayName`
697
3472
  # @return [String]
698
- attr_accessor :agent_content
3473
+ attr_accessor :display_name
699
3474
 
700
- # The URI to a file containing the exported agent. This field is populated only
701
- # if `agent_uri` is specified in ExportAgentRequest.
702
- # Corresponds to the JSON property `agentUri`
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`
703
3505
  # @return [String]
704
- attr_accessor :agent_uri
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
705
3529
 
706
3530
  def initialize(**args)
707
3531
  update!(**args)
@@ -709,8 +3533,13 @@ module Google
709
3533
 
710
3534
  # Update properties of this object
711
3535
  def update!(**args)
712
- @agent_content = args[:agent_content] if args.key?(:agent_content)
713
- @agent_uri = args[:agent_uri] if args.key?(:agent_uri)
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)
714
3543
  end
715
3544
  end
716
3545
 
@@ -807,11 +3636,86 @@ module Google
807
3636
 
808
3637
  # Update properties of this object
809
3638
  def update!(**args)
810
- @display_name = args[:display_name] if args.key?(:display_name)
811
- @just_collected = args[:just_collected] if args.key?(:just_collected)
812
- @required = args[:required] if args.key?(:required)
813
- @state = args[:state] if args.key?(:state)
814
- @value = args[:value] if args.key?(:value)
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)
815
3719
  end
816
3720
  end
817
3721
 
@@ -969,21 +3873,350 @@ module Google
969
3873
 
970
3874
  # Update properties of this object
971
3875
  def update!(**args)
972
- @metadata = args[:metadata] if args.key?(:metadata)
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
4177
+
4178
+ def initialize(**args)
4179
+ update!(**args)
4180
+ end
4181
+
4182
+ # Update properties of this object
4183
+ def update!(**args)
4184
+ @status = args[:status] if args.key?(:status)
4185
+ @test_case = args[:test_case] if args.key?(:test_case)
973
4186
  end
974
4187
  end
975
4188
 
976
- # Represents an audio message that is composed of both segments synthesized from
977
- # the Dialogflow agent prompts and ones hosted externally at the specified URIs.
978
- # The external URIs are specified via play_audio. This message is generated by
979
- # Dialogflow only and not supposed to be defined by the user.
980
- class GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
4189
+ # Represents a result from running a test case in an agent environment.
4190
+ class GoogleCloudDialogflowCxV3beta1TestCaseResult
981
4191
  include Google::Apis::Core::Hashable
982
4192
 
983
- # Segments this audio response is composed of.
984
- # Corresponds to the JSON property `segments`
985
- # @return [Array<Google::Apis::DialogflowV2::GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment>]
986
- 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
987
4220
 
988
4221
  def initialize(**args)
989
4222
  update!(**args)
@@ -991,33 +4224,28 @@ module Google
991
4224
 
992
4225
  # Update properties of this object
993
4226
  def update!(**args)
994
- @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)
995
4232
  end
996
4233
  end
997
4234
 
998
- # Represents one segment of audio.
999
- class GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
4235
+ # Represents configurations for a test case.
4236
+ class GoogleCloudDialogflowCxV3beta1TestConfig
1000
4237
  include Google::Apis::Core::Hashable
1001
4238
 
1002
- # Output only. Whether the playback of this segment can be interrupted by the
1003
- # end user's speech and the client should then start the next Dialogflow request.
1004
- # Corresponds to the JSON property `allowPlaybackInterruption`
1005
- # @return [Boolean]
1006
- attr_accessor :allow_playback_interruption
1007
- alias_method :allow_playback_interruption?, :allow_playback_interruption
1008
-
1009
- # Raw audio synthesized from the Dialogflow agent's response using the output
1010
- # config specified in the request.
1011
- # Corresponds to the JSON property `audio`
1012
- # 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`
1013
4242
  # @return [String]
1014
- attr_accessor :audio
4243
+ attr_accessor :flow
1015
4244
 
1016
- # Client-specific URI that points to an audio clip accessible to the client.
1017
- # Dialogflow does not impose any validation on it.
1018
- # Corresponds to the JSON property `uri`
1019
- # @return [String]
1020
- 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
1021
4249
 
1022
4250
  def initialize(**args)
1023
4251
  update!(**args)
@@ -1025,34 +4253,34 @@ module Google
1025
4253
 
1026
4254
  # Update properties of this object
1027
4255
  def update!(**args)
1028
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1029
- @audio = args[:audio] if args.key?(:audio)
1030
- @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)
1031
4258
  end
1032
4259
  end
1033
4260
 
1034
- # A text or ssml response that is preferentially used for TTS output audio
1035
- # synthesis, as described in the comment on the ResponseMessage message.
1036
- class GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
4261
+ # Error info for running a test.
4262
+ class GoogleCloudDialogflowCxV3beta1TestError
1037
4263
  include Google::Apis::Core::Hashable
1038
4264
 
1039
- # Output only. Whether the playback of this message can be interrupted by the
1040
- # end user's speech and the client can then starts the next Dialogflow request.
1041
- # Corresponds to the JSON property `allowPlaybackInterruption`
1042
- # @return [Boolean]
1043
- attr_accessor :allow_playback_interruption
1044
- 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
1045
4274
 
1046
- # The SSML text to be synthesized. For more information, see [SSML](/speech/text-
1047
- # to-speech/docs/ssml).
1048
- # Corresponds to the JSON property `ssml`
4275
+ # The test case resource name.
4276
+ # Corresponds to the JSON property `testCase`
1049
4277
  # @return [String]
1050
- attr_accessor :ssml
4278
+ attr_accessor :test_case
1051
4279
 
1052
- # The raw text to be synthesized.
1053
- # Corresponds to the JSON property `text`
4280
+ # The timestamp when the test was completed.
4281
+ # Corresponds to the JSON property `testTime`
1054
4282
  # @return [String]
1055
- attr_accessor :text
4283
+ attr_accessor :test_time
1056
4284
 
1057
4285
  def initialize(**args)
1058
4286
  update!(**args)
@@ -1060,28 +4288,25 @@ module Google
1060
4288
 
1061
4289
  # Update properties of this object
1062
4290
  def update!(**args)
1063
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1064
- @ssml = args[:ssml] if args.key?(:ssml)
1065
- @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)
1066
4294
  end
1067
4295
  end
1068
4296
 
1069
- # Specifies an audio clip to be played by the client as part of the response.
1070
- class GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
4297
+ # The description of differences between original and replayed agent output.
4298
+ class GoogleCloudDialogflowCxV3beta1TestRunDifference
1071
4299
  include Google::Apis::Core::Hashable
1072
4300
 
1073
- # Output only. Whether the playback of this message can be interrupted by the
1074
- # end user's speech and the client can then starts the next Dialogflow request.
1075
- # Corresponds to the JSON property `allowPlaybackInterruption`
1076
- # @return [Boolean]
1077
- attr_accessor :allow_playback_interruption
1078
- 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
1079
4305
 
1080
- # Required. URI of the audio clip. Dialogflow does not impose any validation on
1081
- # this value. It is specific to the client that reads it.
1082
- # Corresponds to the JSON property `audioUri`
4306
+ # The type of diff.
4307
+ # Corresponds to the JSON property `type`
1083
4308
  # @return [String]
1084
- attr_accessor :audio_uri
4309
+ attr_accessor :type
1085
4310
 
1086
4311
  def initialize(**args)
1087
4312
  update!(**args)
@@ -1089,25 +4314,19 @@ module Google
1089
4314
 
1090
4315
  # Update properties of this object
1091
4316
  def update!(**args)
1092
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1093
- @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)
1094
4319
  end
1095
4320
  end
1096
4321
 
1097
- # The text response message.
1098
- class GoogleCloudDialogflowCxV3beta1ResponseMessageText
4322
+ # Represents the natural language text to be processed.
4323
+ class GoogleCloudDialogflowCxV3beta1TextInput
1099
4324
  include Google::Apis::Core::Hashable
1100
4325
 
1101
- # Output only. Whether the playback of this message can be interrupted by the
1102
- # end user's speech and the client can then starts the next Dialogflow request.
1103
- # Corresponds to the JSON property `allowPlaybackInterruption`
1104
- # @return [Boolean]
1105
- attr_accessor :allow_playback_interruption
1106
- alias_method :allow_playback_interruption?, :allow_playback_interruption
1107
-
1108
- # 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.
1109
4328
  # Corresponds to the JSON property `text`
1110
- # @return [Array<String>]
4329
+ # @return [String]
1111
4330
  attr_accessor :text
1112
4331
 
1113
4332
  def initialize(**args)
@@ -1116,30 +4335,65 @@ module Google
1116
4335
 
1117
4336
  # Update properties of this object
1118
4337
  def update!(**args)
1119
- @allow_playback_interruption = args[:allow_playback_interruption] if args.key?(:allow_playback_interruption)
1120
4338
  @text = args[:text] if args.key?(:text)
1121
4339
  end
1122
4340
  end
1123
4341
 
1124
- # Represents session information communicated to and from the webhook.
1125
- 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
1126
4350
  include Google::Apis::Core::Hashable
1127
4351
 
1128
- # Optional for WebhookRequest. Optional for WebhookResponse. All parameters
1129
- # collected from forms and intents during the session. Parameters can be created,
1130
- # updated, or removed by the webhook. To remove a parameter from the session,
1131
- # the webhook should explicitly set the parameter value to null in
1132
- # WebhookResponse. The map is keyed by parameters' display names.
1133
- # Corresponds to the JSON property `parameters`
1134
- # @return [Hash<String,Object>]
1135
- 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
1136
4360
 
1137
- # Always present for WebhookRequest. Ignored for WebhookResponse. The unique
1138
- # identifier of the session. This field can be used by the webhook to identify a
1139
- # user. Format: `projects//locations//agents//sessions/`.
1140
- # 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`
1141
4367
  # @return [String]
1142
- 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
1143
4397
 
1144
4398
  def initialize(**args)
1145
4399
  update!(**args)
@@ -1147,8 +4401,31 @@ module Google
1147
4401
 
1148
4402
  # Update properties of this object
1149
4403
  def update!(**args)
1150
- @parameters = args[:parameters] if args.key?(:parameters)
1151
- @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)
1152
4429
  end
1153
4430
  end
1154
4431
 
@@ -3904,8 +7181,8 @@ module Google
3904
7181
  # @return [Google::Apis::DialogflowV2::GoogleCloudDialogflowV2MessageAnnotation]
3905
7182
  attr_accessor :message_annotation
3906
7183
 
3907
- # The unique identifier of the message. Format: `projects//conversations//
3908
- # messages/`.
7184
+ # The unique identifier of the message. Format: `projects//locations//
7185
+ # conversations//messages/`.
3909
7186
  # Corresponds to the JSON property `name`
3910
7187
  # @return [String]
3911
7188
  attr_accessor :name
@@ -4129,6 +7406,18 @@ module Google
4129
7406
  # @return [String]
4130
7407
  attr_accessor :time_zone
4131
7408
 
7409
+ # This field can be used to pass HTTP headers for a webhook call. These headers
7410
+ # will be sent to webhook along with the headers that have been configured
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
7413
+ # conflict. Header names are case-insensitive. Google's specified headers are
7414
+ # not allowed. Including: "Host", "Content-Length", "Connection", "From", "User-
7415
+ # Agent", "Accept-Encoding", "If-Modified-Since", "If-None-Match", "X-Forwarded-
7416
+ # For", etc.
7417
+ # Corresponds to the JSON property `webhookHeaders`
7418
+ # @return [Hash<String,String>]
7419
+ attr_accessor :webhook_headers
7420
+
4132
7421
  def initialize(**args)
4133
7422
  update!(**args)
4134
7423
  end
@@ -4142,6 +7431,7 @@ module Google
4142
7431
  @sentiment_analysis_request_config = args[:sentiment_analysis_request_config] if args.key?(:sentiment_analysis_request_config)
4143
7432
  @session_entity_types = args[:session_entity_types] if args.key?(:session_entity_types)
4144
7433
  @time_zone = args[:time_zone] if args.key?(:time_zone)
7434
+ @webhook_headers = args[:webhook_headers] if args.key?(:webhook_headers)
4145
7435
  end
4146
7436
  end
4147
7437
 
@@ -7332,6 +10622,139 @@ module Google
7332
10622
  end
7333
10623
  end
7334
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
+
7335
10758
  # The response message for Operations.ListOperations.
7336
10759
  class GoogleLongrunningListOperationsResponse
7337
10760
  include Google::Apis::Core::Hashable