Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #metadata: information about the flow
- # platformVersion: the version of the bots platform that this flow was written to work with
- metadata:
- platformVersion: 1.0
- main: true
- name: EcoBot
- #context: Define the variables which will used throughout the dialog flow here.
- context:
- variables:
- #The syntax for defining the variables is variablename: "variableType".
- # The "variableType" can be defined as a primitive type ("int", "string", "boolean"), "list", or an entity name. A variable can also hold the results returned by the Intent Engine. For these variables, the "variableType" must be "nlpresult" (for example, iResult: "nlpresult").
- resposta: "string"
- name: "string"
- tipo: "TipodeLixo"
- iResult: "nlpresult"
- nOpcao: "string"
- tipoReciclar: "string"
- #states is where you can define the various states within your flow.
- # The syntax for defining a state is
- # statename:
- # component:Specify the component you want to use. This can be either a Built-In or custom component.
- # properties:
- # property1: "value" (These are the properties to the specified component
- # transitions: You can specify one of the following four
- # next: Specify the state you want to execute next after this state. By default it will execute the state specified after this
- # error: Specify the state you want to execute in case the component encounters any error in execution.
- # actions: You can handle various actions returned by the components here the syntax is actionName: "statename"
- # action1: state1
- # return: "done" You can exit the flow using the return statement
- states:
- intent:
- component: "System.Intent"
- properties:
- variable: "iResult"
- confidenceThreshold: 0.4
- transitions:
- actions:
- Saudacao: "saudacao"
- Descartar: "descartarLixo"
- DescartarPilha: "descartarPilha"
- ReciclarMateriais: "reciclarLixo"
- unresolvedIntent: "unresolved"
- #inicios, primeira fase
- descartarLixo:
- component: "System.List"
- properties:
- options: "Vidro, Pilha, Madeira, Metal, Orgânico, Eletrônicos"
- prompt: "O que você quer descartar?"
- variable: "tipo"
- transitions: {}
- reciclarLixo:
- component: "System.List"
- properties:
- options: "Vidro,Papel, Plástico, Metal"
- prompt: "Qual dos materiais você deseja reaproveitar?"
- variable: "tipoReciclar"
- transitions: {}
- saudacao:
- component: "System.List"
- properties:
- options: "Sim. E tenho interesse de contribuir ainda mais, Não"
- prompt: "Olá, sou o EcoBot! Você contribui para o meio ambiente?"
- variable: "resposta"
- #Laços condicionais, ou seja, verificações
- checarResposta:
- component: "System.ConditionEquals"
- properties:
- variable: "resposta"
- value: "Sim. E tenho interesse de contribuir ainda mais"
- transitions:
- actions:
- equal: "contribui"
- notequal: "naoContribui"
- checarTipo2:
- component: "System.ConditionEquals"
- properties:
- variable: "nOpcao"
- value: "Descartar"
- transitions:
- actions:
- equal: "descartarLixo"
- notequal: "checarTipo4"
- checarTipo3:
- component: "System.Switch"
- properties:
- variable: "tipo"
- values:
- - "Pilha"
- - "Vidro"
- transitions:
- actions:
- option1: "descartarPilha"
- option2: "descartarVidro"
- NONE: "unresolved"
- #segunda fase, mensagens e listas
- contribui:
- component: "System.Output"
- properties:
- text: "E qual é a sua duvida?"
- transitions:
- return: "start"
- naoContribui:
- component: "System.List"
- properties:
- options: "Descartar, Reciclar, Diminuir consumo"
- prompt: "O meio ambiente corre perigo e precisa de você! Aqui estão algumas dicas do que você pode fazer para contribuir"
- variable: "nOpcao"
- checarTipo4:
- component: "System.ConditionEquals"
- properties:
- variable: "nOpcao"
- value: "Reciclar"
- transitions:
- actions:
- equal: "reciclarLixo"
- notequal: "naoContribui"
- checarTipo5:
- component: "System.Switch"
- properties:
- variable: "tipoReciclar"
- values:
- - "Vidro"
- - "Pilha"
- transitions:
- actions:
- option1: "descartarPilha"
- option2: "descartarVidro"
- NONE: "unresolved"
- #Como descartar
- descartarPilha:
- component: "System.Output"
- properties:
- text: "Para fazer o descarte de pilhas e baterias é necessário, antes de tudo, armazenar as pilhas e/ou baterias sem misturá-las com outros tipo de materiais, apenas embalá-las em plástico resistente para evitar contato com umidade a fim de evitar vazamentos. Após embaladas, consulte quais são os postos de recolhimento mais próximos da sua residência ou local de trabalho. E lembre-se: mesmo que a legislação brasileira (Art.33 da Política Nacional de Resíduos Sólidos) obrigue a empresa fabricante a estruturar e implementar sistemas de logística reversa, você também é responsável pelo descarte correto, então contribua para um mundo menos poluído e tenha uma pegada mais leve separando suas pilhas e baterias e enviando-as para usinas de reciclagem."
- transitions:
- return: "start"
- descartarVidro:
- component: "System.Output"
- properties:
- text: "Para evitar acidentes, a melhor maneira de jogar fora os vidros quebrados é agrupá-los em folhas de jornal, caixas de papelão ou de leite ou até em plásticos-bolha, pois assim é possível evitar contato direto com sacos plásticos e, mais além, não ferir os coletores de lixo."
- transitions:
- return: "start"
- descartarMadeira:
- component: "System.Output"
- properties:
- text: "Os Ecopontos são ótimas formas de destinar materiais como o entulho gerado por construções, reformas ou demolições, evitando assim o agravamento de enchentes e a degradação do espaço público, provocados quando estes materiais são descartados incorretamente."
- transitions:
- return: "start"
- descartarMetal:
- component: "System.Output"
- properties:
- text: "Uma das etapas mais importantes no processo de reciclagem de metal é a separação e coleta seletiva do metal. Nas empresas, residências e outros locais existem espaços destinados ao descarte de metal."
- transitions:
- return: "start"
- #Reciclar
- reciclarVidro:
- component: "System.Output"
- properties:
- text: "Tipos de vidros recicláveis - Garrafas de sucos, refrigerantes, cervejas e outros tipos de bebidas - Potes de alimentos - Cacos de vidros - Frascos de remédios - Frascos de perfumes - Vidros planos e lisos - Pára-brisas - Vidros de janelas\n - Pratos, tigelas e copos (desde que não sejam de acrílico, cerâmica ou porcelana)"
- transitions:
- return: "start"
- start:
- component: "System.Output"
- properties:
- text: "${resposta.value} ${name.value}"
- transitions:
- return: "done"
- #Caso não seja nada.
- unresolved:
- component: "System.Output"
- properties:
- text: "I don't understand. What do you want to do?"
- transitions:
- return: "unresolved"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement