def open(self, input_streams=['<STR_LIT>'], output_streams=['<STR_LIT>', '<STR_LIT>']):
shell = dict()<EOL>shell['<STR_LIT>'] = "<STR_LIT:U+0020>".join(input_streams)<EOL>shell['<STR_LIT>'] = "<STR_LIT:U+0020>".join(output_streams)<EOL>shell['<STR_LIT>'] = str(self.idle_timeout)<EOL>if self.working_directory is not None:<EOL><INDENT>shell['<STR_LIT>'] = str(self.working_directory)<EOL><DEDENT>if self.environment is not None:<EOL><INDENT>variables = []<EOL>for key, value in self.environment.items():<EOL><INDENT>variables.append({'<STR_LIT>': str(value), '<STR_LIT>': key})<EOL><DEDENT>shell['<STR_LIT>'] = {'<STR_LIT>': variables}<EOL><DEDENT>response = self.session.create(self.resource, {'<STR_LIT>': shell})<EOL>self.__shell_id = response['<STR_LIT>']['<STR_LIT>']<EOL>
Opens the remote shell